stackone_client 0.15.0 → 0.17.0

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 (84) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stack_one/hris.rb +8 -8
  3. data/lib/stack_one/models/operations/hris_create_employee_employment_response.rb +5 -5
  4. data/lib/stack_one/models/operations/hris_update_employee_employment_request.rb +5 -5
  5. data/lib/stack_one/models/operations/hris_update_employee_employment_response.rb +5 -5
  6. data/lib/stack_one/models/operations/queryparam_filter.rb +2 -10
  7. data/lib/stack_one/models/operations/stackone_list_step_logs_request.rb +2 -6
  8. data/lib/stack_one/models/operations.rb +0 -3
  9. data/lib/stack_one/models/shared/body.rb +28 -0
  10. data/lib/stack_one/models/shared/connectsessioncreate.rb +6 -2
  11. data/lib/stack_one/models/shared/createemploymentapimodel.rb +14 -6
  12. data/lib/stack_one/models/shared/createemploymentapimodel_duration_unit.rb +1 -1
  13. data/lib/stack_one/models/shared/createemploymentapimodel_schemas_work_time_value.rb +1 -1
  14. data/lib/stack_one/models/shared/employee.rb +0 -2
  15. data/lib/stack_one/models/shared/employment.rb +10 -6
  16. data/lib/stack_one/models/shared/employment_contract_type.rb +2 -0
  17. data/lib/stack_one/models/shared/employment_duration_unit.rb +1 -1
  18. data/lib/stack_one/models/shared/employment_grade.rb +45 -0
  19. data/lib/stack_one/models/shared/employment_schemas_work_time_value.rb +1 -1
  20. data/lib/stack_one/models/shared/employment_type.rb +2 -0
  21. data/lib/stack_one/models/shared/grade.rb +45 -0
  22. data/lib/stack_one/models/shared/hriscreateemployeerequestdto.rb +7 -1
  23. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_duration_unit.rb +1 -1
  24. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_employment.rb +14 -6
  25. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_employment_contract_type.rb +2 -0
  26. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_employment_type.rb +2 -0
  27. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_grade.rb +45 -0
  28. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_contract_type.rb +2 -0
  29. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_type.rb +2 -0
  30. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_work_time_value.rb +1 -1
  31. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto.rb +14 -6
  32. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto_duration_unit.rb +1 -1
  33. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto_employment_contract_type.rb +2 -0
  34. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto_employment_type.rb +2 -0
  35. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto_grade.rb +45 -0
  36. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto_schemas_work_time_value.rb +1 -1
  37. data/lib/stack_one/models/shared/hriscreatetimeoffrequestdto.rb +1 -1
  38. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto.rb +7 -1
  39. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_duration_unit.rb +1 -1
  40. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_employment.rb +14 -6
  41. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_employment_contract_type.rb +2 -0
  42. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_employment_type.rb +2 -0
  43. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_grade.rb +45 -0
  44. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_contract_type.rb +2 -0
  45. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_type.rb +2 -0
  46. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_work_time_value.rb +1 -1
  47. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto.rb +89 -0
  48. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_4.rb +28 -0
  49. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_duration_unit.rb +37 -0
  50. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_employment_contract_type.rb +39 -0
  51. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_employment_type.rb +39 -0
  52. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_grade.rb +45 -0
  53. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_pay_frequency.rb +37 -0
  54. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_pay_period.rb +37 -0
  55. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_4.rb +28 -0
  56. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_frequency_4.rb +28 -0
  57. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_frequency_source_value.rb +28 -0
  58. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_frequency_value.rb +33 -0
  59. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_period_4.rb +28 -0
  60. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_period_source_value.rb +28 -0
  61. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_period_value.rb +31 -0
  62. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_source_value.rb +28 -0
  63. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_value.rb +35 -0
  64. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_work_time_4.rb +28 -0
  65. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_work_time_source_value.rb +28 -0
  66. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_work_time_value.rb +23 -0
  67. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_source_value.rb +28 -0
  68. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_value.rb +22 -0
  69. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_work_time.rb +37 -0
  70. data/lib/stack_one/models/shared/jobposting.rb +6 -2
  71. data/lib/stack_one/models/shared/rawresponse.rb +2 -2
  72. data/lib/stack_one/models/shared/{steplogsapimodel.rb → steplog.rb} +1 -1
  73. data/lib/stack_one/models/shared/steplogpartial.rb +105 -0
  74. data/lib/stack_one/models/shared/steplogspaginated.rb +2 -2
  75. data/lib/stack_one/models/shared/timeoff.rb +1 -1
  76. data/lib/stack_one/models/shared/unifiedlogs.rb +2 -2
  77. data/lib/stack_one/models/shared/unifiedlogspaginated.rb +2 -2
  78. data/lib/stack_one/models/shared/unifiedlogspartial.rb +121 -0
  79. data/lib/stack_one/models/shared.rb +32 -1
  80. data/lib/stack_one/sdkconfiguration.rb +2 -2
  81. metadata +34 -6
  82. data/lib/stack_one/models/operations/stackone_list_step_logs_queryparam_include.rb +0 -20
  83. data/lib/stack_one/models/operations/stackone_list_step_logs_queryparam_request_logs_order_by.rb +0 -23
  84. data/lib/stack_one/models/operations/stackone_list_step_logs_queryparam_request_logs_order_direction.rb +0 -20
@@ -18,11 +18,17 @@ module StackOne
18
18
  # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
19
19
  field :effective_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('effective_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
20
20
  # The employment work schedule type (e.g., full-time, part-time)
21
+ #
22
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
21
23
  field :employment_contract_type, T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoSchemasEmploymentContractType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_contract_type') } }
22
24
  # The type of employment (e.g., contractor, permanent)
25
+ #
26
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
23
27
  field :employment_type, T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoSchemasEmploymentType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_type') } }
24
- # Unique identifier
25
- field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
28
+ # The end date of employment
29
+ field :end_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('end_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
30
+ # Represents the employee’s position within the organizational hierarchy.
31
+ field :grade, T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoGrade), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('grade') } }
26
32
  # The job title of the employee
27
33
  field :job_title, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('job_title') } }
28
34
  # Value to pass through to the provider
@@ -43,12 +49,13 @@ module StackOne
43
49
  field :work_time, T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoWorkTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('work_time') } }
44
50
 
45
51
 
46
- sig { params(effective_date: T.nilable(::DateTime), employment_contract_type: T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoSchemasEmploymentContractType), employment_type: T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoSchemasEmploymentType), id: T.nilable(::String), job_title: T.nilable(::String), passthrough: T.nilable(T::Hash[Symbol, ::Object]), pay_currency: T.nilable(::String), pay_frequency: T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoPayFrequency), pay_period: T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoPayPeriod), pay_rate: T.nilable(::String), payroll_code: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), work_time: T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoWorkTime)).void }
47
- def initialize(effective_date: nil, employment_contract_type: nil, employment_type: nil, id: nil, job_title: nil, passthrough: nil, pay_currency: nil, pay_frequency: nil, pay_period: nil, pay_rate: nil, payroll_code: nil, unified_custom_fields: nil, work_time: nil)
52
+ sig { params(effective_date: T.nilable(::DateTime), employment_contract_type: T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoSchemasEmploymentContractType), employment_type: T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoSchemasEmploymentType), end_date: T.nilable(::DateTime), grade: T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoGrade), job_title: T.nilable(::String), passthrough: T.nilable(T::Hash[Symbol, ::Object]), pay_currency: T.nilable(::String), pay_frequency: T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoPayFrequency), pay_period: T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoPayPeriod), pay_rate: T.nilable(::String), payroll_code: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), work_time: T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoWorkTime)).void }
53
+ def initialize(effective_date: nil, employment_contract_type: nil, employment_type: nil, end_date: nil, grade: nil, job_title: nil, passthrough: nil, pay_currency: nil, pay_frequency: nil, pay_period: nil, pay_rate: nil, payroll_code: nil, unified_custom_fields: nil, work_time: nil)
48
54
  @effective_date = effective_date
49
55
  @employment_contract_type = employment_contract_type
50
56
  @employment_type = employment_type
51
- @id = id
57
+ @end_date = end_date
58
+ @grade = grade
52
59
  @job_title = job_title
53
60
  @passthrough = passthrough
54
61
  @pay_currency = pay_currency
@@ -65,7 +72,8 @@ module StackOne
65
72
  return false unless @effective_date == other.effective_date
66
73
  return false unless @employment_contract_type == other.employment_contract_type
67
74
  return false unless @employment_type == other.employment_type
68
- return false unless @id == other.id
75
+ return false unless @end_date == other.end_date
76
+ return false unless @grade == other.grade
69
77
  return false unless @job_title == other.job_title
70
78
  return false unless @passthrough == other.passthrough
71
79
  return false unless @pay_currency == other.pay_currency
@@ -9,6 +9,8 @@ module StackOne
9
9
  module Shared
10
10
 
11
11
  # The employment work schedule type (e.g., full-time, part-time)
12
+ #
13
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
12
14
  class HrisCreateEmployeeRequestDtoEmploymentContractType
13
15
  extend T::Sig
14
16
  include Crystalline::MetadataFields
@@ -9,6 +9,8 @@ module StackOne
9
9
  module Shared
10
10
 
11
11
  # The employee employment type
12
+ #
13
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
12
14
  class HrisCreateEmployeeRequestDtoEmploymentType
13
15
  extend T::Sig
14
16
  include Crystalline::MetadataFields
@@ -0,0 +1,45 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+ # Represents the employee’s position within the organizational hierarchy.
12
+ class HrisCreateEmployeeRequestDtoGrade
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # description of the grade
17
+ field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('description') } }
18
+ # The reference id
19
+ field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
20
+ # The reference name
21
+ field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } }
22
+ # Provider's unique identifier
23
+ field :remote_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_id') } }
24
+
25
+
26
+ sig { params(description: T.nilable(::String), id: T.nilable(::String), name: T.nilable(::String), remote_id: T.nilable(::String)).void }
27
+ def initialize(description: nil, id: nil, name: nil, remote_id: nil)
28
+ @description = description
29
+ @id = id
30
+ @name = name
31
+ @remote_id = remote_id
32
+ end
33
+
34
+ def ==(other)
35
+ return false unless other.is_a? self.class
36
+ return false unless @description == other.description
37
+ return false unless @id == other.id
38
+ return false unless @name == other.name
39
+ return false unless @remote_id == other.remote_id
40
+ true
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -9,6 +9,8 @@ module StackOne
9
9
  module Shared
10
10
 
11
11
  # The employment work schedule type (e.g., full-time, part-time)
12
+ #
13
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
12
14
  class HrisCreateEmployeeRequestDtoSchemasEmploymentContractType
13
15
  extend T::Sig
14
16
  include Crystalline::MetadataFields
@@ -9,6 +9,8 @@ module StackOne
9
9
  module Shared
10
10
 
11
11
  # The type of employment (e.g., contractor, permanent)
12
+ #
13
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
12
14
  class HrisCreateEmployeeRequestDtoSchemasEmploymentType
13
15
  extend T::Sig
14
16
  include Crystalline::MetadataFields
@@ -8,7 +8,7 @@ module StackOne
8
8
  module Models
9
9
  module Shared
10
10
 
11
- # HrisCreateEmployeeRequestDtoSchemasEmploymentWorkTimeValue - The unified value for the duration unit.
11
+ # HrisCreateEmployeeRequestDtoSchemasEmploymentWorkTimeValue - The unified value for the period.
12
12
  class HrisCreateEmployeeRequestDtoSchemasEmploymentWorkTimeValue < T::Enum
13
13
  enums do
14
14
  DAY = new('day')
@@ -16,11 +16,17 @@ module StackOne
16
16
  # The effective date of the employment contract
17
17
  field :effective_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('effective_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
18
18
  # The employment work schedule type (e.g., full-time, part-time)
19
+ #
20
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
19
21
  field :employment_contract_type, T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoEmploymentContractType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_contract_type') } }
20
22
  # The type of employment (e.g., contractor, permanent)
23
+ #
24
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
21
25
  field :employment_type, T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoEmploymentType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_type') } }
22
- # Unique identifier
23
- field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
26
+ # The end date of employment
27
+ field :end_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('end_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
28
+ # Represents the employee’s position within the organizational hierarchy.
29
+ field :grade, T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoGrade), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('grade') } }
24
30
  # The employee job id
25
31
  field :job_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('job_id') } }
26
32
  # The job title of the employee
@@ -43,12 +49,13 @@ module StackOne
43
49
  field :work_time, T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoWorkTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('work_time') } }
44
50
 
45
51
 
46
- sig { params(effective_date: T.nilable(::DateTime), employment_contract_type: T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoEmploymentContractType), employment_type: T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoEmploymentType), id: T.nilable(::String), job_id: T.nilable(::String), job_title: T.nilable(::String), passthrough: T.nilable(T::Hash[Symbol, ::Object]), pay_currency: T.nilable(::String), pay_frequency: T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoPayFrequency), pay_period: T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoPayPeriod), pay_rate: T.nilable(::String), payroll_code: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), work_time: T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoWorkTime)).void }
47
- def initialize(effective_date: nil, employment_contract_type: nil, employment_type: nil, id: nil, job_id: nil, job_title: nil, passthrough: nil, pay_currency: nil, pay_frequency: nil, pay_period: nil, pay_rate: nil, payroll_code: nil, unified_custom_fields: nil, work_time: nil)
52
+ sig { params(effective_date: T.nilable(::DateTime), employment_contract_type: T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoEmploymentContractType), employment_type: T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoEmploymentType), end_date: T.nilable(::DateTime), grade: T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoGrade), job_id: T.nilable(::String), job_title: T.nilable(::String), passthrough: T.nilable(T::Hash[Symbol, ::Object]), pay_currency: T.nilable(::String), pay_frequency: T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoPayFrequency), pay_period: T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoPayPeriod), pay_rate: T.nilable(::String), payroll_code: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), work_time: T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoWorkTime)).void }
53
+ def initialize(effective_date: nil, employment_contract_type: nil, employment_type: nil, end_date: nil, grade: nil, job_id: nil, job_title: nil, passthrough: nil, pay_currency: nil, pay_frequency: nil, pay_period: nil, pay_rate: nil, payroll_code: nil, unified_custom_fields: nil, work_time: nil)
48
54
  @effective_date = effective_date
49
55
  @employment_contract_type = employment_contract_type
50
56
  @employment_type = employment_type
51
- @id = id
57
+ @end_date = end_date
58
+ @grade = grade
52
59
  @job_id = job_id
53
60
  @job_title = job_title
54
61
  @passthrough = passthrough
@@ -66,7 +73,8 @@ module StackOne
66
73
  return false unless @effective_date == other.effective_date
67
74
  return false unless @employment_contract_type == other.employment_contract_type
68
75
  return false unless @employment_type == other.employment_type
69
- return false unless @id == other.id
76
+ return false unless @end_date == other.end_date
77
+ return false unless @grade == other.grade
70
78
  return false unless @job_id == other.job_id
71
79
  return false unless @job_title == other.job_title
72
80
  return false unless @passthrough == other.passthrough
@@ -15,7 +15,7 @@ module StackOne
15
15
 
16
16
 
17
17
  field :source_value, T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::HrisCreateEmploymentRequestDtoSchemasWorkTime4, T::Array[::Object])), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
18
- # The unified value for the duration unit.
18
+ # The unified value for the period.
19
19
  field :value, T.nilable(Models::Shared::HrisCreateEmploymentRequestDtoSchemasWorkTimeValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Models::Shared::HrisCreateEmploymentRequestDtoSchemasWorkTimeValue, true) } }
20
20
 
21
21
 
@@ -9,6 +9,8 @@ module StackOne
9
9
  module Shared
10
10
 
11
11
  # The employment work schedule type (e.g., full-time, part-time)
12
+ #
13
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
12
14
  class HrisCreateEmploymentRequestDtoEmploymentContractType
13
15
  extend T::Sig
14
16
  include Crystalline::MetadataFields
@@ -9,6 +9,8 @@ module StackOne
9
9
  module Shared
10
10
 
11
11
  # The type of employment (e.g., contractor, permanent)
12
+ #
13
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
12
14
  class HrisCreateEmploymentRequestDtoEmploymentType
13
15
  extend T::Sig
14
16
  include Crystalline::MetadataFields
@@ -0,0 +1,45 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+ # Represents the employee’s position within the organizational hierarchy.
12
+ class HrisCreateEmploymentRequestDtoGrade
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # description of the grade
17
+ field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('description') } }
18
+ # The reference id
19
+ field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
20
+ # The reference name
21
+ field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } }
22
+ # Provider's unique identifier
23
+ field :remote_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_id') } }
24
+
25
+
26
+ sig { params(description: T.nilable(::String), id: T.nilable(::String), name: T.nilable(::String), remote_id: T.nilable(::String)).void }
27
+ def initialize(description: nil, id: nil, name: nil, remote_id: nil)
28
+ @description = description
29
+ @id = id
30
+ @name = name
31
+ @remote_id = remote_id
32
+ end
33
+
34
+ def ==(other)
35
+ return false unless other.is_a? self.class
36
+ return false unless @description == other.description
37
+ return false unless @id == other.id
38
+ return false unless @name == other.name
39
+ return false unless @remote_id == other.remote_id
40
+ true
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -8,7 +8,7 @@ module StackOne
8
8
  module Models
9
9
  module Shared
10
10
 
11
- # HrisCreateEmploymentRequestDtoSchemasWorkTimeValue - The unified value for the duration unit.
11
+ # HrisCreateEmploymentRequestDtoSchemasWorkTimeValue - The unified value for the period.
12
12
  class HrisCreateEmploymentRequestDtoSchemasWorkTimeValue < T::Enum
13
13
  enums do
14
14
  DAY = new('day')
@@ -17,7 +17,7 @@ module StackOne
17
17
  field :approver_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('approver_id') } }
18
18
  # The employee ID
19
19
  field :employee_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employee_id') } }
20
- # The end date of the time off request
20
+ # Inclusive end date of the time off request (the time off includes this day).
21
21
  field :end_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('end_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
22
22
  # True if the end of the time off request ends half way through the day
23
23
  field :end_half_day, T.nilable(T.any(T::Boolean, Models::Shared::HrisCreateTimeOffRequestDto2)), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('end_half_day') } }
@@ -44,10 +44,14 @@ module StackOne
44
44
  # The employee employment
45
45
  field :employment, T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoEmployment), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment') } }
46
46
  # The employment work schedule type (e.g., full-time, part-time)
47
+ #
48
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
47
49
  field :employment_contract_type, T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoEmploymentContractType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_contract_type') } }
48
50
  # The employee employment status
49
51
  field :employment_status, T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoEmploymentStatus), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_status') } }
50
52
  # The employee employment type
53
+ #
54
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
51
55
  field :employment_type, T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoEmploymentType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_type') } }
52
56
  # The employee ethnicity
53
57
  field :ethnicity, T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoEthnicity), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('ethnicity') } }
@@ -60,8 +64,10 @@ module StackOne
60
64
  # The employee home location
61
65
  field :home_location, T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoHomeLocation), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('home_location') } }
62
66
  # The employee job id
67
+ #
68
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
63
69
  field :job_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('job_id') } }
64
- # The employee job title
70
+ # If the source of the job_title is the Employee's current Employment, and that Employment pertains exclusively to this Employee, then the active Employment job_title will also be written
65
71
  field :job_title, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('job_title') } }
66
72
  # The employee last name
67
73
  field :last_name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('last_name') } }
@@ -15,7 +15,7 @@ module StackOne
15
15
 
16
16
 
17
17
  field :source_value, T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::HrisUpdateEmployeeRequestDtoSchemasEmploymentWorkTime4, T::Array[::Object])), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
18
- # The unified value for the duration unit.
18
+ # The unified value for the period.
19
19
  field :value, T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoSchemasEmploymentWorkTimeValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Models::Shared::HrisUpdateEmployeeRequestDtoSchemasEmploymentWorkTimeValue, true) } }
20
20
 
21
21
 
@@ -18,11 +18,17 @@ module StackOne
18
18
  # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
19
19
  field :effective_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('effective_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
20
20
  # The employment work schedule type (e.g., full-time, part-time)
21
+ #
22
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
21
23
  field :employment_contract_type, T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoSchemasEmploymentContractType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_contract_type') } }
22
24
  # The type of employment (e.g., contractor, permanent)
25
+ #
26
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
23
27
  field :employment_type, T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoSchemasEmploymentType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_type') } }
24
- # Unique identifier
25
- field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
28
+ # The end date of employment
29
+ field :end_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('end_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
30
+ # Represents the employee’s position within the organizational hierarchy.
31
+ field :grade, T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoGrade), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('grade') } }
26
32
  # The job title of the employee
27
33
  field :job_title, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('job_title') } }
28
34
  # Value to pass through to the provider
@@ -43,12 +49,13 @@ module StackOne
43
49
  field :work_time, T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoWorkTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('work_time') } }
44
50
 
45
51
 
46
- sig { params(effective_date: T.nilable(::DateTime), employment_contract_type: T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoSchemasEmploymentContractType), employment_type: T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoSchemasEmploymentType), id: T.nilable(::String), job_title: T.nilable(::String), passthrough: T.nilable(T::Hash[Symbol, ::Object]), pay_currency: T.nilable(::String), pay_frequency: T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoPayFrequency), pay_period: T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoPayPeriod), pay_rate: T.nilable(::String), payroll_code: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), work_time: T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoWorkTime)).void }
47
- def initialize(effective_date: nil, employment_contract_type: nil, employment_type: nil, id: nil, job_title: nil, passthrough: nil, pay_currency: nil, pay_frequency: nil, pay_period: nil, pay_rate: nil, payroll_code: nil, unified_custom_fields: nil, work_time: nil)
52
+ sig { params(effective_date: T.nilable(::DateTime), employment_contract_type: T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoSchemasEmploymentContractType), employment_type: T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoSchemasEmploymentType), end_date: T.nilable(::DateTime), grade: T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoGrade), job_title: T.nilable(::String), passthrough: T.nilable(T::Hash[Symbol, ::Object]), pay_currency: T.nilable(::String), pay_frequency: T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoPayFrequency), pay_period: T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoPayPeriod), pay_rate: T.nilable(::String), payroll_code: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), work_time: T.nilable(Models::Shared::HrisUpdateEmployeeRequestDtoWorkTime)).void }
53
+ def initialize(effective_date: nil, employment_contract_type: nil, employment_type: nil, end_date: nil, grade: nil, job_title: nil, passthrough: nil, pay_currency: nil, pay_frequency: nil, pay_period: nil, pay_rate: nil, payroll_code: nil, unified_custom_fields: nil, work_time: nil)
48
54
  @effective_date = effective_date
49
55
  @employment_contract_type = employment_contract_type
50
56
  @employment_type = employment_type
51
- @id = id
57
+ @end_date = end_date
58
+ @grade = grade
52
59
  @job_title = job_title
53
60
  @passthrough = passthrough
54
61
  @pay_currency = pay_currency
@@ -65,7 +72,8 @@ module StackOne
65
72
  return false unless @effective_date == other.effective_date
66
73
  return false unless @employment_contract_type == other.employment_contract_type
67
74
  return false unless @employment_type == other.employment_type
68
- return false unless @id == other.id
75
+ return false unless @end_date == other.end_date
76
+ return false unless @grade == other.grade
69
77
  return false unless @job_title == other.job_title
70
78
  return false unless @passthrough == other.passthrough
71
79
  return false unless @pay_currency == other.pay_currency
@@ -9,6 +9,8 @@ module StackOne
9
9
  module Shared
10
10
 
11
11
  # The employment work schedule type (e.g., full-time, part-time)
12
+ #
13
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
12
14
  class HrisUpdateEmployeeRequestDtoEmploymentContractType
13
15
  extend T::Sig
14
16
  include Crystalline::MetadataFields
@@ -9,6 +9,8 @@ module StackOne
9
9
  module Shared
10
10
 
11
11
  # The employee employment type
12
+ #
13
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
12
14
  class HrisUpdateEmployeeRequestDtoEmploymentType
13
15
  extend T::Sig
14
16
  include Crystalline::MetadataFields
@@ -0,0 +1,45 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+ # Represents the employee’s position within the organizational hierarchy.
12
+ class HrisUpdateEmployeeRequestDtoGrade
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # description of the grade
17
+ field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('description') } }
18
+ # The reference id
19
+ field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
20
+ # The reference name
21
+ field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } }
22
+ # Provider's unique identifier
23
+ field :remote_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_id') } }
24
+
25
+
26
+ sig { params(description: T.nilable(::String), id: T.nilable(::String), name: T.nilable(::String), remote_id: T.nilable(::String)).void }
27
+ def initialize(description: nil, id: nil, name: nil, remote_id: nil)
28
+ @description = description
29
+ @id = id
30
+ @name = name
31
+ @remote_id = remote_id
32
+ end
33
+
34
+ def ==(other)
35
+ return false unless other.is_a? self.class
36
+ return false unless @description == other.description
37
+ return false unless @id == other.id
38
+ return false unless @name == other.name
39
+ return false unless @remote_id == other.remote_id
40
+ true
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -9,6 +9,8 @@ module StackOne
9
9
  module Shared
10
10
 
11
11
  # The employment work schedule type (e.g., full-time, part-time)
12
+ #
13
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
12
14
  class HrisUpdateEmployeeRequestDtoSchemasEmploymentContractType
13
15
  extend T::Sig
14
16
  include Crystalline::MetadataFields
@@ -9,6 +9,8 @@ module StackOne
9
9
  module Shared
10
10
 
11
11
  # The type of employment (e.g., contractor, permanent)
12
+ #
13
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
12
14
  class HrisUpdateEmployeeRequestDtoSchemasEmploymentType
13
15
  extend T::Sig
14
16
  include Crystalline::MetadataFields
@@ -8,7 +8,7 @@ module StackOne
8
8
  module Models
9
9
  module Shared
10
10
 
11
- # HrisUpdateEmployeeRequestDtoSchemasEmploymentWorkTimeValue - The unified value for the duration unit.
11
+ # HrisUpdateEmployeeRequestDtoSchemasEmploymentWorkTimeValue - The unified value for the period.
12
12
  class HrisUpdateEmployeeRequestDtoSchemasEmploymentWorkTimeValue < T::Enum
13
13
  enums do
14
14
  DAY = new('day')
@@ -0,0 +1,89 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+
12
+ class HrisUpdateEmploymentRequestDto
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The effective date of the employment contract
17
+ field :effective_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('effective_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
18
+ # The employment work schedule type (e.g., full-time, part-time)
19
+ #
20
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
21
+ field :employment_contract_type, T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoEmploymentContractType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_contract_type') } }
22
+ # The type of employment (e.g., contractor, permanent)
23
+ #
24
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
25
+ field :employment_type, T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoEmploymentType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_type') } }
26
+ # The end date of employment
27
+ field :end_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('end_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
28
+ # Represents the employee’s position within the organizational hierarchy.
29
+ field :grade, T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoGrade), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('grade') } }
30
+ # The job title of the employee
31
+ field :job_title, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('job_title') } }
32
+ # Value to pass through to the provider
33
+ field :passthrough, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('passthrough') } }
34
+ # The currency used for pay
35
+ field :pay_currency, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('pay_currency') } }
36
+ # The pay frequency
37
+ field :pay_frequency, T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoPayFrequency), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('pay_frequency') } }
38
+ # The pay period
39
+ field :pay_period, T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoPayPeriod), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('pay_period') } }
40
+ # The pay rate for the employee
41
+ field :pay_rate, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('pay_rate') } }
42
+ # The payroll code of the employee
43
+ field :payroll_code, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('payroll_code') } }
44
+ # Custom Unified Fields configured in your StackOne project
45
+ field :unified_custom_fields, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('unified_custom_fields') } }
46
+
47
+ field :work_time, T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoWorkTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('work_time') } }
48
+
49
+
50
+ sig { params(effective_date: T.nilable(::DateTime), employment_contract_type: T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoEmploymentContractType), employment_type: T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoEmploymentType), end_date: T.nilable(::DateTime), grade: T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoGrade), job_title: T.nilable(::String), passthrough: T.nilable(T::Hash[Symbol, ::Object]), pay_currency: T.nilable(::String), pay_frequency: T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoPayFrequency), pay_period: T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoPayPeriod), pay_rate: T.nilable(::String), payroll_code: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), work_time: T.nilable(Models::Shared::HrisUpdateEmploymentRequestDtoWorkTime)).void }
51
+ def initialize(effective_date: nil, employment_contract_type: nil, employment_type: nil, end_date: nil, grade: nil, job_title: nil, passthrough: nil, pay_currency: nil, pay_frequency: nil, pay_period: nil, pay_rate: nil, payroll_code: nil, unified_custom_fields: nil, work_time: nil)
52
+ @effective_date = effective_date
53
+ @employment_contract_type = employment_contract_type
54
+ @employment_type = employment_type
55
+ @end_date = end_date
56
+ @grade = grade
57
+ @job_title = job_title
58
+ @passthrough = passthrough
59
+ @pay_currency = pay_currency
60
+ @pay_frequency = pay_frequency
61
+ @pay_period = pay_period
62
+ @pay_rate = pay_rate
63
+ @payroll_code = payroll_code
64
+ @unified_custom_fields = unified_custom_fields
65
+ @work_time = work_time
66
+ end
67
+
68
+ def ==(other)
69
+ return false unless other.is_a? self.class
70
+ return false unless @effective_date == other.effective_date
71
+ return false unless @employment_contract_type == other.employment_contract_type
72
+ return false unless @employment_type == other.employment_type
73
+ return false unless @end_date == other.end_date
74
+ return false unless @grade == other.grade
75
+ return false unless @job_title == other.job_title
76
+ return false unless @passthrough == other.passthrough
77
+ return false unless @pay_currency == other.pay_currency
78
+ return false unless @pay_frequency == other.pay_frequency
79
+ return false unless @pay_period == other.pay_period
80
+ return false unless @pay_rate == other.pay_rate
81
+ return false unless @payroll_code == other.payroll_code
82
+ return false unless @unified_custom_fields == other.unified_custom_fields
83
+ return false unless @work_time == other.work_time
84
+ true
85
+ end
86
+ end
87
+ end
88
+ end
89
+ end
@@ -0,0 +1,28 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+
12
+ class HrisUpdateEmploymentRequestDto4
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+
18
+
19
+ def initialize; end
20
+
21
+ def ==(other)
22
+ return false unless other.is_a? self.class
23
+ true
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end