stackone_client 0.13.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 (112) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stack_one/hris.rb +786 -234
  3. data/lib/stack_one/models/operations/hris_create_employee_employment_response.rb +5 -5
  4. data/lib/stack_one/models/operations/hris_get_employee_task_request.rb +57 -0
  5. data/lib/stack_one/models/operations/hris_get_employee_task_response.rb +49 -0
  6. data/lib/stack_one/models/operations/hris_list_employee_tasks_queryparam_filter.rb +33 -0
  7. data/lib/stack_one/models/operations/hris_list_employee_tasks_request.rb +77 -0
  8. data/lib/stack_one/models/operations/hris_list_employee_tasks_response.rb +49 -0
  9. data/lib/stack_one/models/operations/hris_update_employee_employment_request.rb +5 -5
  10. data/lib/stack_one/models/operations/hris_update_employee_employment_response.rb +5 -5
  11. data/lib/stack_one/models/operations/queryparam_filter.rb +2 -10
  12. data/lib/stack_one/models/operations/stackone_list_step_logs_request.rb +2 -6
  13. data/lib/stack_one/models/operations.rb +5 -3
  14. data/lib/stack_one/models/shared/answer_value.rb +1 -0
  15. data/lib/stack_one/models/shared/body.rb +28 -0
  16. data/lib/stack_one/models/shared/connectsessioncreate.rb +6 -2
  17. data/lib/stack_one/models/shared/createanswer_value.rb +1 -0
  18. data/lib/stack_one/models/shared/createemploymentapimodel.rb +14 -6
  19. data/lib/stack_one/models/shared/createemploymentapimodel_duration_unit.rb +1 -1
  20. data/lib/stack_one/models/shared/createemploymentapimodel_schemas_work_time_value.rb +1 -1
  21. data/lib/stack_one/models/shared/employee.rb +0 -2
  22. data/lib/stack_one/models/shared/employment.rb +10 -6
  23. data/lib/stack_one/models/shared/employment_contract_type.rb +2 -0
  24. data/lib/stack_one/models/shared/employment_duration_unit.rb +1 -1
  25. data/lib/stack_one/models/shared/employment_grade.rb +45 -0
  26. data/lib/stack_one/models/shared/employment_schemas_work_time_value.rb +1 -1
  27. data/lib/stack_one/models/shared/employment_type.rb +2 -0
  28. data/lib/stack_one/models/shared/file.rb +75 -0
  29. data/lib/stack_one/models/shared/file_4.rb +28 -0
  30. data/lib/stack_one/models/shared/file_category.rb +37 -0
  31. data/lib/stack_one/models/shared/file_file_format.rb +37 -0
  32. data/lib/stack_one/models/shared/file_schemas_4.rb +28 -0
  33. data/lib/stack_one/models/shared/file_schemas_source_value.rb +28 -0
  34. data/lib/stack_one/models/shared/file_source_value.rb +28 -0
  35. data/lib/stack_one/models/shared/file_value.rb +1229 -0
  36. data/lib/stack_one/models/shared/grade.rb +45 -0
  37. data/lib/stack_one/models/shared/hriscreateemployeerequestdto.rb +7 -1
  38. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_duration_unit.rb +1 -1
  39. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_employment.rb +14 -6
  40. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_employment_contract_type.rb +2 -0
  41. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_employment_type.rb +2 -0
  42. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_grade.rb +45 -0
  43. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_contract_type.rb +2 -0
  44. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_type.rb +2 -0
  45. data/lib/stack_one/models/shared/hriscreateemployeerequestdto_schemas_employment_work_time_value.rb +1 -1
  46. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto.rb +14 -6
  47. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto_duration_unit.rb +1 -1
  48. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto_employment_contract_type.rb +2 -0
  49. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto_employment_type.rb +2 -0
  50. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto_grade.rb +45 -0
  51. data/lib/stack_one/models/shared/hriscreateemploymentrequestdto_schemas_work_time_value.rb +1 -1
  52. data/lib/stack_one/models/shared/hriscreatetimeoffrequestdto.rb +1 -1
  53. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto.rb +7 -1
  54. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_duration_unit.rb +1 -1
  55. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_employment.rb +14 -6
  56. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_employment_contract_type.rb +2 -0
  57. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_employment_type.rb +2 -0
  58. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_grade.rb +45 -0
  59. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_contract_type.rb +2 -0
  60. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_type.rb +2 -0
  61. data/lib/stack_one/models/shared/hrisupdateemployeerequestdto_schemas_employment_work_time_value.rb +1 -1
  62. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto.rb +89 -0
  63. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_4.rb +28 -0
  64. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_duration_unit.rb +37 -0
  65. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_employment_contract_type.rb +39 -0
  66. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_employment_type.rb +39 -0
  67. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_grade.rb +45 -0
  68. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_pay_frequency.rb +37 -0
  69. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_pay_period.rb +37 -0
  70. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_4.rb +28 -0
  71. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_frequency_4.rb +28 -0
  72. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_frequency_source_value.rb +28 -0
  73. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_frequency_value.rb +33 -0
  74. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_period_4.rb +28 -0
  75. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_period_source_value.rb +28 -0
  76. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_pay_period_value.rb +31 -0
  77. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_source_value.rb +28 -0
  78. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_value.rb +35 -0
  79. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_work_time_4.rb +28 -0
  80. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_work_time_source_value.rb +28 -0
  81. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_schemas_work_time_value.rb +23 -0
  82. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_source_value.rb +28 -0
  83. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_value.rb +22 -0
  84. data/lib/stack_one/models/shared/hrisupdateemploymentrequestdto_work_time.rb +37 -0
  85. data/lib/stack_one/models/shared/jobposting.rb +6 -2
  86. data/lib/stack_one/models/shared/question_value.rb +1 -0
  87. data/lib/stack_one/models/shared/rawresponse.rb +2 -2
  88. data/lib/stack_one/models/shared/{steplogsapimodel.rb → steplog.rb} +1 -1
  89. data/lib/stack_one/models/shared/steplogpartial.rb +105 -0
  90. data/lib/stack_one/models/shared/steplogspaginated.rb +2 -2
  91. data/lib/stack_one/models/shared/task.rb +105 -0
  92. data/lib/stack_one/models/shared/task_4.rb +28 -0
  93. data/lib/stack_one/models/shared/task_schemas_4.rb +28 -0
  94. data/lib/stack_one/models/shared/task_schemas_source_value.rb +28 -0
  95. data/lib/stack_one/models/shared/task_schemas_value.rb +24 -0
  96. data/lib/stack_one/models/shared/task_source_value.rb +28 -0
  97. data/lib/stack_one/models/shared/task_status.rb +37 -0
  98. data/lib/stack_one/models/shared/task_type.rb +37 -0
  99. data/lib/stack_one/models/shared/task_value.rb +24 -0
  100. data/lib/stack_one/models/shared/taskcommentapimodel.rb +41 -0
  101. data/lib/stack_one/models/shared/taskresult.rb +37 -0
  102. data/lib/stack_one/models/shared/taskspaginated.rb +41 -0
  103. data/lib/stack_one/models/shared/timeoff.rb +1 -1
  104. data/lib/stack_one/models/shared/unifiedlogs.rb +2 -2
  105. data/lib/stack_one/models/shared/unifiedlogspaginated.rb +2 -2
  106. data/lib/stack_one/models/shared/unifiedlogspartial.rb +121 -0
  107. data/lib/stack_one/models/shared.rb +52 -1
  108. data/lib/stack_one/sdkconfiguration.rb +2 -2
  109. metadata +59 -6
  110. data/lib/stack_one/models/operations/stackone_list_step_logs_queryparam_include.rb +0 -20
  111. data/lib/stack_one/models/operations/stackone_list_step_logs_queryparam_request_logs_order_by.rb +0 -23
  112. data/lib/stack_one/models/operations/stackone_list_step_logs_queryparam_request_logs_order_direction.rb +0 -20
@@ -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 Grade
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
@@ -46,10 +46,14 @@ module StackOne
46
46
  # The employee employment
47
47
  field :employment, T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoEmployment), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment') } }
48
48
  # The employment work schedule type (e.g., full-time, part-time)
49
+ #
50
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
49
51
  field :employment_contract_type, T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoEmploymentContractType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_contract_type') } }
50
52
  # The employee employment status
51
53
  field :employment_status, T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoEmploymentStatus), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_status') } }
52
54
  # The employee employment type
55
+ #
56
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
53
57
  field :employment_type, T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoEmploymentType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('employment_type') } }
54
58
  # The employee employments
55
59
  #
@@ -66,8 +70,10 @@ module StackOne
66
70
  # The employee home location
67
71
  field :home_location, T.nilable(Models::Shared::HrisCreateEmployeeRequestDtoHomeLocation), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('home_location') } }
68
72
  # The employee job id
73
+ #
74
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
69
75
  field :job_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('job_id') } }
70
- # The employee job title
76
+ # 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
71
77
  field :job_title, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('job_title') } }
72
78
  # The employee last name
73
79
  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::HrisCreateEmployeeRequestDtoSchemasEmploymentWorkTime4, 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::HrisCreateEmployeeRequestDtoSchemasEmploymentWorkTimeValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Models::Shared::HrisCreateEmployeeRequestDtoSchemasEmploymentWorkTimeValue, 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::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')