stackone_client 0.6.0 → 0.7.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 (40) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stack_one/accounts.rb +279 -36
  3. data/lib/stack_one/ats.rb +4075 -580
  4. data/lib/stack_one/connect_sessions.rb +123 -22
  5. data/lib/stack_one/connectors.rb +111 -14
  6. data/lib/stack_one/crm.rb +563 -78
  7. data/lib/stack_one/hris.rb +3401 -458
  8. data/lib/stack_one/iam.rb +675 -56
  9. data/lib/stack_one/lms.rb +1533 -220
  10. data/lib/stack_one/marketing.rb +1503 -230
  11. data/lib/stack_one/models/operations/hris_update_employee_time_off_request_request.rb +33 -0
  12. data/lib/stack_one/models/operations/hris_update_employee_time_off_request_response.rb +36 -0
  13. data/lib/stack_one/models/operations/iam_delete_user_request.rb +27 -0
  14. data/lib/stack_one/models/operations/iam_delete_user_response.rb +36 -0
  15. data/lib/stack_one/models/operations/iam_update_user_request.rb +30 -0
  16. data/lib/stack_one/models/operations/iam_update_user_response.rb +36 -0
  17. data/lib/stack_one/models/operations/lms_list_users_queryparam_filter.rb +5 -2
  18. data/lib/stack_one/models/operations.rb +6 -0
  19. data/lib/stack_one/models/shared/atscreatejobrequestdto.rb +5 -2
  20. data/lib/stack_one/models/shared/atsupdatejobrequestdto.rb +5 -2
  21. data/lib/stack_one/models/shared/hriscreatetimeoffrequestdto.rb +2 -0
  22. data/lib/stack_one/models/shared/hriscreatetimeoffrequestdto_type.rb +2 -0
  23. data/lib/stack_one/models/shared/iamupdateuserrequestdto.rb +45 -0
  24. data/lib/stack_one/models/shared/iamupdateuserrequestdto_status.rb +27 -0
  25. data/lib/stack_one/models/shared/iamupdateuserrequestdto_value.rb +20 -0
  26. data/lib/stack_one/models/shared/job.rb +5 -2
  27. data/lib/stack_one/models/shared/rawresponse.rb +2 -2
  28. data/lib/stack_one/models/shared/timeoff.rb +2 -0
  29. data/lib/stack_one/models/shared/timeoff_type.rb +2 -0
  30. data/lib/stack_one/models/shared/updateuserapimodel.rb +45 -0
  31. data/lib/stack_one/models/shared/updateuserapimodel_status.rb +27 -0
  32. data/lib/stack_one/models/shared/updateuserapimodel_value.rb +20 -0
  33. data/lib/stack_one/models/shared.rb +6 -0
  34. data/lib/stack_one/proxy.rb +62 -11
  35. data/lib/stack_one/sdk_hooks/hooks.rb +101 -0
  36. data/lib/stack_one/sdk_hooks/types.rb +152 -0
  37. data/lib/stack_one/sdkconfiguration.rb +11 -4
  38. data/lib/stack_one/stackone.rb +22 -8
  39. data/lib/stack_one/utils/utils.rb +10 -0
  40. metadata +16 -2
@@ -0,0 +1,33 @@
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 Operations
9
+
10
+
11
+ class HrisUpdateEmployeeTimeOffRequestRequest < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :hris_create_time_off_request_dto, ::StackOne::Shared::HrisCreateTimeOffRequestDto, { 'request': { 'media_type': 'application/json' } }
16
+
17
+ field :id, ::String, { 'path_param': { 'field_name': 'id', 'style': 'simple', 'explode': false } }
18
+
19
+ field :sub_resource_id, ::String, { 'path_param': { 'field_name': 'subResourceId', 'style': 'simple', 'explode': false } }
20
+ # The account identifier
21
+ field :x_account_id, ::String, { 'header': { 'field_name': 'x-account-id', 'style': 'simple', 'explode': false } }
22
+
23
+
24
+ sig { params(hris_create_time_off_request_dto: ::StackOne::Shared::HrisCreateTimeOffRequestDto, id: ::String, sub_resource_id: ::String, x_account_id: ::String).void }
25
+ def initialize(hris_create_time_off_request_dto: nil, id: nil, sub_resource_id: nil, x_account_id: nil)
26
+ @hris_create_time_off_request_dto = hris_create_time_off_request_dto
27
+ @id = id
28
+ @sub_resource_id = sub_resource_id
29
+ @x_account_id = x_account_id
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,36 @@
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 Operations
9
+
10
+
11
+ class HrisUpdateEmployeeTimeOffRequestResponse < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # HTTP response content type for this operation
15
+ field :content_type, ::String
16
+
17
+ field :headers, T::Hash[Symbol, T::Array[::String]]
18
+ # Raw HTTP response; suitable for custom response parsing
19
+ field :raw_response, ::Faraday::Response
20
+ # HTTP response status code for this operation
21
+ field :status_code, ::Integer
22
+ # Record updated successfully
23
+ field :create_result, T.nilable(::StackOne::Shared::CreateResult)
24
+
25
+
26
+ sig { params(content_type: ::String, headers: T::Hash[Symbol, T::Array[::String]], raw_response: ::Faraday::Response, status_code: ::Integer, create_result: T.nilable(::StackOne::Shared::CreateResult)).void }
27
+ def initialize(content_type: nil, headers: nil, raw_response: nil, status_code: nil, create_result: nil)
28
+ @content_type = content_type
29
+ @headers = headers
30
+ @raw_response = raw_response
31
+ @status_code = status_code
32
+ @create_result = create_result
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Operations
9
+
10
+
11
+ class IamDeleteUserRequest < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :id, ::String, { 'path_param': { 'field_name': 'id', 'style': 'simple', 'explode': false } }
16
+ # The account identifier
17
+ field :x_account_id, ::String, { 'header': { 'field_name': 'x-account-id', 'style': 'simple', 'explode': false } }
18
+
19
+
20
+ sig { params(id: ::String, x_account_id: ::String).void }
21
+ def initialize(id: nil, x_account_id: nil)
22
+ @id = id
23
+ @x_account_id = x_account_id
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,36 @@
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 Operations
9
+
10
+
11
+ class IamDeleteUserResponse < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # HTTP response content type for this operation
15
+ field :content_type, ::String
16
+
17
+ field :headers, T::Hash[Symbol, T::Array[::String]]
18
+ # Raw HTTP response; suitable for custom response parsing
19
+ field :raw_response, ::Faraday::Response
20
+ # HTTP response status code for this operation
21
+ field :status_code, ::Integer
22
+ # The user was deleted successfully.
23
+ field :delete_result, T.nilable(::StackOne::Shared::DeleteResult)
24
+
25
+
26
+ sig { params(content_type: ::String, headers: T::Hash[Symbol, T::Array[::String]], raw_response: ::Faraday::Response, status_code: ::Integer, delete_result: T.nilable(::StackOne::Shared::DeleteResult)).void }
27
+ def initialize(content_type: nil, headers: nil, raw_response: nil, status_code: nil, delete_result: nil)
28
+ @content_type = content_type
29
+ @headers = headers
30
+ @raw_response = raw_response
31
+ @status_code = status_code
32
+ @delete_result = delete_result
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,30 @@
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 Operations
9
+
10
+
11
+ class IamUpdateUserRequest < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :iam_update_user_request_dto, ::StackOne::Shared::IamUpdateUserRequestDto, { 'request': { 'media_type': 'application/json' } }
16
+
17
+ field :id, ::String, { 'path_param': { 'field_name': 'id', 'style': 'simple', 'explode': false } }
18
+ # The account identifier
19
+ field :x_account_id, ::String, { 'header': { 'field_name': 'x-account-id', 'style': 'simple', 'explode': false } }
20
+
21
+
22
+ sig { params(iam_update_user_request_dto: ::StackOne::Shared::IamUpdateUserRequestDto, id: ::String, x_account_id: ::String).void }
23
+ def initialize(iam_update_user_request_dto: nil, id: nil, x_account_id: nil)
24
+ @iam_update_user_request_dto = iam_update_user_request_dto
25
+ @id = id
26
+ @x_account_id = x_account_id
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,36 @@
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 Operations
9
+
10
+
11
+ class IamUpdateUserResponse < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # HTTP response content type for this operation
15
+ field :content_type, ::String
16
+
17
+ field :headers, T::Hash[Symbol, T::Array[::String]]
18
+ # Raw HTTP response; suitable for custom response parsing
19
+ field :raw_response, ::Faraday::Response
20
+ # HTTP response status code for this operation
21
+ field :status_code, ::Integer
22
+ # Record updated successfully.
23
+ field :update_user_api_model, T.nilable(::StackOne::Shared::UpdateUserApiModel)
24
+
25
+
26
+ sig { params(content_type: ::String, headers: T::Hash[Symbol, T::Array[::String]], raw_response: ::Faraday::Response, status_code: ::Integer, update_user_api_model: T.nilable(::StackOne::Shared::UpdateUserApiModel)).void }
27
+ def initialize(content_type: nil, headers: nil, raw_response: nil, status_code: nil, update_user_api_model: nil)
28
+ @content_type = content_type
29
+ @headers = headers
30
+ @raw_response = raw_response
31
+ @status_code = status_code
32
+ @update_user_api_model = update_user_api_model
33
+ end
34
+ end
35
+ end
36
+ end
@@ -13,13 +13,16 @@ module StackOne
13
13
 
14
14
  # Filter to select users by email
15
15
  field :email, T.nilable(::String), { 'query_param': { 'field_name': 'email' } }
16
+ # Filter to select users by external_reference
17
+ field :external_reference, T.nilable(::String), { 'query_param': { 'field_name': 'external_reference' } }
16
18
  # Use a string with a date to only select results updated after that given date
17
19
  field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after' } }
18
20
 
19
21
 
20
- sig { params(email: T.nilable(::String), updated_after: T.nilable(::String)).void }
21
- def initialize(email: nil, updated_after: nil)
22
+ sig { params(email: T.nilable(::String), external_reference: T.nilable(::String), updated_after: T.nilable(::String)).void }
23
+ def initialize(email: nil, external_reference: nil, updated_after: nil)
22
24
  @email = email
25
+ @external_reference = external_reference
23
26
  @updated_after = updated_after
24
27
  end
25
28
  end
@@ -352,12 +352,16 @@ module StackOne
352
352
  autoload :HrisUpdateEmployeeResponse, 'stack_one/models/operations/hris_update_employee_response.rb'
353
353
  autoload :HrisUpdateEmployeeEmploymentRequest, 'stack_one/models/operations/hris_update_employee_employment_request.rb'
354
354
  autoload :HrisUpdateEmployeeEmploymentResponse, 'stack_one/models/operations/hris_update_employee_employment_response.rb'
355
+ autoload :HrisUpdateEmployeeTimeOffRequestRequest, 'stack_one/models/operations/hris_update_employee_time_off_request_request.rb'
356
+ autoload :HrisUpdateEmployeeTimeOffRequestResponse, 'stack_one/models/operations/hris_update_employee_time_off_request_response.rb'
355
357
  autoload :HrisUpdateEmployeeWorkEligibilityRequestRequest, 'stack_one/models/operations/hris_update_employee_work_eligibility_request_request.rb'
356
358
  autoload :HrisUpdateEmployeeWorkEligibilityRequestResponse, 'stack_one/models/operations/hris_update_employee_work_eligibility_request_response.rb'
357
359
  autoload :HrisUpdateTimeOffRequestRequest, 'stack_one/models/operations/hris_update_time_off_request_request.rb'
358
360
  autoload :HrisUpdateTimeOffRequestResponse, 'stack_one/models/operations/hris_update_time_off_request_response.rb'
359
361
  autoload :HrisUploadEmployeeDocumentRequest, 'stack_one/models/operations/hris_upload_employee_document_request.rb'
360
362
  autoload :HrisUploadEmployeeDocumentResponse, 'stack_one/models/operations/hris_upload_employee_document_response.rb'
363
+ autoload :IamDeleteUserRequest, 'stack_one/models/operations/iam_delete_user_request.rb'
364
+ autoload :IamDeleteUserResponse, 'stack_one/models/operations/iam_delete_user_response.rb'
361
365
  autoload :IamGetGroupRequest, 'stack_one/models/operations/iam_get_group_request.rb'
362
366
  autoload :IamGetGroupResponse, 'stack_one/models/operations/iam_get_group_response.rb'
363
367
  autoload :IamGetPolicyRequest, 'stack_one/models/operations/iam_get_policy_request.rb'
@@ -378,6 +382,8 @@ module StackOne
378
382
  autoload :IamListUsersQueryParamFilter, 'stack_one/models/operations/iam_list_users_queryparam_filter.rb'
379
383
  autoload :IamListUsersRequest, 'stack_one/models/operations/iam_list_users_request.rb'
380
384
  autoload :IamListUsersResponse, 'stack_one/models/operations/iam_list_users_response.rb'
385
+ autoload :IamUpdateUserRequest, 'stack_one/models/operations/iam_update_user_request.rb'
386
+ autoload :IamUpdateUserResponse, 'stack_one/models/operations/iam_update_user_response.rb'
381
387
  autoload :LmsBatchUpsertContentRequest, 'stack_one/models/operations/lms_batch_upsert_content_request.rb'
382
388
  autoload :LmsBatchUpsertContentResponse, 'stack_one/models/operations/lms_batch_upsert_content_response.rb'
383
389
  autoload :LmsBatchUpsertCourseRequest, 'stack_one/models/operations/lms_batch_upsert_course_request.rb'
@@ -19,6 +19,8 @@ module StackOne
19
19
  field :custom_fields, T.nilable(T::Array[::StackOne::Shared::CustomFields]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('custom_fields') } }
20
20
  # Department ids of the job
21
21
  field :department_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('department_ids') } }
22
+ # Description of the job
23
+ field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('description') } }
22
24
  # Hiring team for the job.
23
25
  field :hiring_team, T.nilable(T::Array[::StackOne::Shared::JobHiringTeam]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('hiring_team') } }
24
26
  # Interview stages for the job.
@@ -39,12 +41,13 @@ module StackOne
39
41
  field :unified_custom_fields, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('unified_custom_fields') } }
40
42
 
41
43
 
42
- sig { params(code: T.nilable(::String), confidential: T.nilable(::StackOne::Shared::Confidential), custom_fields: T.nilable(T::Array[::StackOne::Shared::CustomFields]), department_ids: T.nilable(T::Array[::String]), hiring_team: T.nilable(T::Array[::StackOne::Shared::JobHiringTeam]), interview_stages: T.nilable(T::Array[::StackOne::Shared::InterviewStage]), job_status: T.nilable(::StackOne::Shared::JobStatus), location_ids: T.nilable(T::Array[::String]), passthrough: T.nilable(T::Hash[Symbol, ::Object]), status: T.nilable(::String), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
43
- def initialize(code: nil, confidential: nil, custom_fields: nil, department_ids: nil, hiring_team: nil, interview_stages: nil, job_status: nil, location_ids: nil, passthrough: nil, status: nil, title: nil, unified_custom_fields: nil)
44
+ sig { params(code: T.nilable(::String), confidential: T.nilable(::StackOne::Shared::Confidential), custom_fields: T.nilable(T::Array[::StackOne::Shared::CustomFields]), department_ids: T.nilable(T::Array[::String]), description: T.nilable(::String), hiring_team: T.nilable(T::Array[::StackOne::Shared::JobHiringTeam]), interview_stages: T.nilable(T::Array[::StackOne::Shared::InterviewStage]), job_status: T.nilable(::StackOne::Shared::JobStatus), location_ids: T.nilable(T::Array[::String]), passthrough: T.nilable(T::Hash[Symbol, ::Object]), status: T.nilable(::String), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
45
+ def initialize(code: nil, confidential: nil, custom_fields: nil, department_ids: nil, description: nil, hiring_team: nil, interview_stages: nil, job_status: nil, location_ids: nil, passthrough: nil, status: nil, title: nil, unified_custom_fields: nil)
44
46
  @code = code
45
47
  @confidential = confidential
46
48
  @custom_fields = custom_fields
47
49
  @department_ids = department_ids
50
+ @description = description
48
51
  @hiring_team = hiring_team
49
52
  @interview_stages = interview_stages
50
53
  @job_status = job_status
@@ -19,6 +19,8 @@ module StackOne
19
19
  field :custom_fields, T.nilable(T::Array[::StackOne::Shared::CustomFields]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('custom_fields') } }
20
20
  # Department ids of the job
21
21
  field :department_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('department_ids') } }
22
+ # Description of the job
23
+ field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('description') } }
22
24
  # Hiring team for the job.
23
25
  field :hiring_team, T.nilable(T::Array[::StackOne::Shared::JobHiringTeam]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('hiring_team') } }
24
26
  # Interview stages for the job.
@@ -39,12 +41,13 @@ module StackOne
39
41
  field :unified_custom_fields, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('unified_custom_fields') } }
40
42
 
41
43
 
42
- sig { params(code: T.nilable(::String), confidential: T.nilable(::StackOne::Shared::AtsUpdateJobRequestDtoConfidential), custom_fields: T.nilable(T::Array[::StackOne::Shared::CustomFields]), department_ids: T.nilable(T::Array[::String]), hiring_team: T.nilable(T::Array[::StackOne::Shared::JobHiringTeam]), interview_stages: T.nilable(T::Array[::StackOne::Shared::InterviewStage]), job_status: T.nilable(::StackOne::Shared::AtsUpdateJobRequestDtoJobStatus), location_ids: T.nilable(T::Array[::String]), passthrough: T.nilable(T::Hash[Symbol, ::Object]), status: T.nilable(::String), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
43
- def initialize(code: nil, confidential: nil, custom_fields: nil, department_ids: nil, hiring_team: nil, interview_stages: nil, job_status: nil, location_ids: nil, passthrough: nil, status: nil, title: nil, unified_custom_fields: nil)
44
+ sig { params(code: T.nilable(::String), confidential: T.nilable(::StackOne::Shared::AtsUpdateJobRequestDtoConfidential), custom_fields: T.nilable(T::Array[::StackOne::Shared::CustomFields]), department_ids: T.nilable(T::Array[::String]), description: T.nilable(::String), hiring_team: T.nilable(T::Array[::StackOne::Shared::JobHiringTeam]), interview_stages: T.nilable(T::Array[::StackOne::Shared::InterviewStage]), job_status: T.nilable(::StackOne::Shared::AtsUpdateJobRequestDtoJobStatus), location_ids: T.nilable(T::Array[::String]), passthrough: T.nilable(T::Hash[Symbol, ::Object]), status: T.nilable(::String), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
45
+ def initialize(code: nil, confidential: nil, custom_fields: nil, department_ids: nil, description: nil, hiring_team: nil, interview_stages: nil, job_status: nil, location_ids: nil, passthrough: nil, status: nil, title: nil, unified_custom_fields: nil)
44
46
  @code = code
45
47
  @confidential = confidential
46
48
  @custom_fields = custom_fields
47
49
  @department_ids = department_ids
50
+ @description = description
48
51
  @hiring_team = hiring_team
49
52
  @interview_stages = interview_stages
50
53
  @job_status = job_status
@@ -32,6 +32,8 @@ module StackOne
32
32
  # The time off policy id associated with this time off request
33
33
  field :time_off_policy_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('time_off_policy_id') } }
34
34
  # The type of the time off request
35
+ #
36
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
35
37
  field :type, T.nilable(::StackOne::Shared::HrisCreateTimeOffRequestDtoType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('type') } }
36
38
 
37
39
 
@@ -8,6 +8,8 @@ module StackOne
8
8
  module Shared
9
9
 
10
10
  # The type of the time off request
11
+ #
12
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
11
13
  class HrisCreateTimeOffRequestDtoType < ::Crystalline::FieldAugmented
12
14
  extend T::Sig
13
15
 
@@ -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 Shared
9
+
10
+
11
+ class IamUpdateUserRequestDto < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :first_name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('first_name') } }
16
+ # Indicates if the user is a bot or service user
17
+ field :is_bot_user, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('is_bot_user') } }
18
+
19
+ field :last_name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('last_name') } }
20
+ # User's name which (can be a full name or display name)
21
+ field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } }
22
+ # Value to pass through to the provider
23
+ field :passthrough, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('passthrough') } }
24
+ # Primary email address of the user. This is generally a work email address.
25
+ field :primary_email_address, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('primary_email_address') } }
26
+
27
+ field :status, T.nilable(::StackOne::Shared::IamUpdateUserRequestDtoStatus), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('status') } }
28
+
29
+ field :username, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('username') } }
30
+
31
+
32
+ sig { params(first_name: T.nilable(::String), is_bot_user: T.nilable(::Object), last_name: T.nilable(::String), name: T.nilable(::String), passthrough: T.nilable(T::Hash[Symbol, ::Object]), primary_email_address: T.nilable(::String), status: T.nilable(::StackOne::Shared::IamUpdateUserRequestDtoStatus), username: T.nilable(::String)).void }
33
+ def initialize(first_name: nil, is_bot_user: nil, last_name: nil, name: nil, passthrough: nil, primary_email_address: nil, status: nil, username: nil)
34
+ @first_name = first_name
35
+ @is_bot_user = is_bot_user
36
+ @last_name = last_name
37
+ @name = name
38
+ @passthrough = passthrough
39
+ @primary_email_address = primary_email_address
40
+ @status = status
41
+ @username = username
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class IamUpdateUserRequestDtoStatus < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :source_value, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
16
+ # The status of the user, e.g. whether the user is enabled, has been disabled (eg. by an admin), or is pending (ie: awaiting approval by the user or an admin).
17
+ field :value, T.nilable(::StackOne::Shared::IamUpdateUserRequestDtoValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::IamUpdateUserRequestDtoValue, true) } }
18
+
19
+
20
+ sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::IamUpdateUserRequestDtoValue)).void }
21
+ def initialize(source_value: nil, value: nil)
22
+ @source_value = source_value
23
+ @value = value
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,20 @@
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 Shared
9
+
10
+ # IamUpdateUserRequestDtoValue - The status of the user, e.g. whether the user is enabled, has been disabled (eg. by an admin), or is pending (ie: awaiting approval by the user or an admin).
11
+ class IamUpdateUserRequestDtoValue < T::Enum
12
+ enums do
13
+ ENABLED = new('enabled')
14
+ DISABLED = new('disabled')
15
+ PENDING = new('pending')
16
+ UNMAPPED_VALUE = new('unmapped_value')
17
+ end
18
+ end
19
+ end
20
+ end
@@ -21,6 +21,8 @@ module StackOne
21
21
  field :custom_fields, T.nilable(T::Array[::StackOne::Shared::CustomFields]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('custom_fields') } }
22
22
  # Department ids of the job
23
23
  field :department_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('department_ids') } }
24
+ # Description of the job
25
+ field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('description') } }
24
26
  # Hiring team for the job.
25
27
  field :hiring_team, T.nilable(T::Array[::StackOne::Shared::JobHiringTeam]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('hiring_team') } }
26
28
  # Unique identifier
@@ -49,13 +51,14 @@ module StackOne
49
51
  field :updated_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
50
52
 
51
53
 
52
- sig { params(code: T.nilable(::String), confidential: T.nilable(::StackOne::Shared::JobConfidential), created_at: T.nilable(::DateTime), custom_fields: T.nilable(T::Array[::StackOne::Shared::CustomFields]), department_ids: T.nilable(T::Array[::String]), hiring_team: T.nilable(T::Array[::StackOne::Shared::JobHiringTeam]), id: T.nilable(::String), interview_stages: T.nilable(T::Array[::StackOne::Shared::InterviewStage]), job_status: T.nilable(::StackOne::Shared::JobJobStatus), location_ids: T.nilable(T::Array[::String]), remote_department_ids: T.nilable(T::Array[::String]), remote_id: T.nilable(::String), remote_location_ids: T.nilable(T::Array[::String]), status: T.nilable(::String), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), updated_at: T.nilable(::DateTime)).void }
53
- def initialize(code: nil, confidential: nil, created_at: nil, custom_fields: nil, department_ids: nil, hiring_team: nil, id: nil, interview_stages: nil, job_status: nil, location_ids: nil, remote_department_ids: nil, remote_id: nil, remote_location_ids: nil, status: nil, title: nil, unified_custom_fields: nil, updated_at: nil)
54
+ sig { params(code: T.nilable(::String), confidential: T.nilable(::StackOne::Shared::JobConfidential), created_at: T.nilable(::DateTime), custom_fields: T.nilable(T::Array[::StackOne::Shared::CustomFields]), department_ids: T.nilable(T::Array[::String]), description: T.nilable(::String), hiring_team: T.nilable(T::Array[::StackOne::Shared::JobHiringTeam]), id: T.nilable(::String), interview_stages: T.nilable(T::Array[::StackOne::Shared::InterviewStage]), job_status: T.nilable(::StackOne::Shared::JobJobStatus), location_ids: T.nilable(T::Array[::String]), remote_department_ids: T.nilable(T::Array[::String]), remote_id: T.nilable(::String), remote_location_ids: T.nilable(T::Array[::String]), status: T.nilable(::String), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), updated_at: T.nilable(::DateTime)).void }
55
+ def initialize(code: nil, confidential: nil, created_at: nil, custom_fields: nil, department_ids: nil, description: nil, hiring_team: nil, id: nil, interview_stages: nil, job_status: nil, location_ids: nil, remote_department_ids: nil, remote_id: nil, remote_location_ids: nil, status: nil, title: nil, unified_custom_fields: nil, updated_at: nil)
54
56
  @code = code
55
57
  @confidential = confidential
56
58
  @created_at = created_at
57
59
  @custom_fields = custom_fields
58
60
  @department_ids = department_ids
61
+ @description = description
59
62
  @hiring_team = hiring_team
60
63
  @id = id
61
64
  @interview_stages = interview_stages
@@ -16,12 +16,12 @@ module StackOne
16
16
 
17
17
  field :url, ::String, { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('url') } }
18
18
 
19
- field :body, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('body') } }
19
+ field :body, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('body') } }
20
20
 
21
21
  field :response, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('response') } }
22
22
 
23
23
 
24
- sig { params(method: ::String, url: ::String, body: T.nilable(::String), response: T.nilable(T::Hash[Symbol, ::Object])).void }
24
+ sig { params(method: ::String, url: ::String, body: T.nilable(::Object), response: T.nilable(T::Hash[Symbol, ::Object])).void }
25
25
  def initialize(method: nil, url: nil, body: nil, response: nil)
26
26
  @method = method
27
27
  @url = url
@@ -44,6 +44,8 @@ module StackOne
44
44
  # The time off policy id associated with this time off request
45
45
  field :time_off_policy_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('time_off_policy_id') } }
46
46
  # The type of the time off request
47
+ #
48
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
47
49
  field :type, T.nilable(::StackOne::Shared::TimeOffType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('type') } }
48
50
  # The updated date of the time off request
49
51
  field :updated_date, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('updated_date'), 'decoder': Utils.datetime_from_iso_format(true) } }
@@ -8,6 +8,8 @@ module StackOne
8
8
  module Shared
9
9
 
10
10
  # The type of the time off request
11
+ #
12
+ # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
11
13
  class TimeOffType < ::Crystalline::FieldAugmented
12
14
  extend T::Sig
13
15
 
@@ -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 Shared
9
+
10
+
11
+ class UpdateUserApiModel < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :first_name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('first_name') } }
16
+ # Indicates if the user is a bot or service user
17
+ field :is_bot_user, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('is_bot_user') } }
18
+
19
+ field :last_name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('last_name') } }
20
+ # User's name which (can be a full name or display name)
21
+ field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } }
22
+ # Value to pass through to the provider
23
+ field :passthrough, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('passthrough') } }
24
+ # Primary email address of the user. This is generally a work email address.
25
+ field :primary_email_address, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('primary_email_address') } }
26
+
27
+ field :status, T.nilable(::StackOne::Shared::UpdateUserApiModelStatus), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('status') } }
28
+
29
+ field :username, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('username') } }
30
+
31
+
32
+ sig { params(first_name: T.nilable(::String), is_bot_user: T.nilable(::Object), last_name: T.nilable(::String), name: T.nilable(::String), passthrough: T.nilable(T::Hash[Symbol, ::Object]), primary_email_address: T.nilable(::String), status: T.nilable(::StackOne::Shared::UpdateUserApiModelStatus), username: T.nilable(::String)).void }
33
+ def initialize(first_name: nil, is_bot_user: nil, last_name: nil, name: nil, passthrough: nil, primary_email_address: nil, status: nil, username: nil)
34
+ @first_name = first_name
35
+ @is_bot_user = is_bot_user
36
+ @last_name = last_name
37
+ @name = name
38
+ @passthrough = passthrough
39
+ @primary_email_address = primary_email_address
40
+ @status = status
41
+ @username = username
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Shared
9
+
10
+
11
+ class UpdateUserApiModelStatus < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :source_value, T.nilable(::Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
16
+ # The status of the user, e.g. whether the user is enabled, has been disabled (eg. by an admin), or is pending (ie: awaiting approval by the user or an admin).
17
+ field :value, T.nilable(::StackOne::Shared::UpdateUserApiModelValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(::StackOne::Shared::UpdateUserApiModelValue, true) } }
18
+
19
+
20
+ sig { params(source_value: T.nilable(::Object), value: T.nilable(::StackOne::Shared::UpdateUserApiModelValue)).void }
21
+ def initialize(source_value: nil, value: nil)
22
+ @source_value = source_value
23
+ @value = value
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,20 @@
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 Shared
9
+
10
+ # UpdateUserApiModelValue - The status of the user, e.g. whether the user is enabled, has been disabled (eg. by an admin), or is pending (ie: awaiting approval by the user or an admin).
11
+ class UpdateUserApiModelValue < T::Enum
12
+ enums do
13
+ ENABLED = new('enabled')
14
+ DISABLED = new('disabled')
15
+ PENDING = new('pending')
16
+ UNMAPPED_VALUE = new('unmapped_value')
17
+ end
18
+ end
19
+ end
20
+ end
@@ -676,6 +676,12 @@ module StackOne
676
676
  autoload :IamPoliciesPaginated, 'stack_one/models/shared/iampoliciespaginated.rb'
677
677
  autoload :IamRolesPaginated, 'stack_one/models/shared/iamrolespaginated.rb'
678
678
  autoload :IamUsersPaginated, 'stack_one/models/shared/iamuserspaginated.rb'
679
+ autoload :UpdateUserApiModelValue, 'stack_one/models/shared/updateuserapimodel_value.rb'
680
+ autoload :UpdateUserApiModelStatus, 'stack_one/models/shared/updateuserapimodel_status.rb'
681
+ autoload :UpdateUserApiModel, 'stack_one/models/shared/updateuserapimodel.rb'
682
+ autoload :IamUpdateUserRequestDtoValue, 'stack_one/models/shared/iamupdateuserrequestdto_value.rb'
683
+ autoload :IamUpdateUserRequestDtoStatus, 'stack_one/models/shared/iamupdateuserrequestdto_status.rb'
684
+ autoload :IamUpdateUserRequestDto, 'stack_one/models/shared/iamupdateuserrequestdto.rb'
679
685
  autoload :LmsBatchUpsertContentRequestDto, 'stack_one/models/shared/lmsbatchupsertcontentrequestdto.rb'
680
686
  autoload :LmsUpsertContentRequestDtoValue, 'stack_one/models/shared/lmsupsertcontentrequestdto_value.rb'
681
687
  autoload :LmsUpsertContentRequestDtoContentType, 'stack_one/models/shared/lmsupsertcontentrequestdto_content_type.rb'