stackone_client 0.25.0 → 0.29.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 (61) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stack_one/ats.rb +786 -239
  3. data/lib/stack_one/hris.rb +2634 -446
  4. data/lib/stack_one/models/operations/ats_get_application_document_category_request.rb +49 -0
  5. data/lib/stack_one/models/operations/ats_get_application_document_category_response.rb +49 -0
  6. data/lib/stack_one/models/operations/ats_list_application_document_categories_queryparam_filter.rb +33 -0
  7. data/lib/stack_one/models/operations/ats_list_application_document_categories_request.rb +69 -0
  8. data/lib/stack_one/models/operations/ats_list_application_document_categories_response.rb +49 -0
  9. data/lib/stack_one/models/operations/hris_get_company_group_request.rb +49 -0
  10. data/lib/stack_one/models/operations/hris_get_company_group_response.rb +49 -0
  11. data/lib/stack_one/models/operations/hris_get_division_group_request.rb +49 -0
  12. data/lib/stack_one/models/operations/hris_get_division_group_response.rb +49 -0
  13. data/lib/stack_one/models/operations/hris_get_shift_request.rb +49 -0
  14. data/lib/stack_one/models/operations/hris_get_shift_response.rb +49 -0
  15. data/lib/stack_one/models/operations/hris_get_task_request.rb +53 -0
  16. data/lib/stack_one/models/operations/hris_get_task_response.rb +49 -0
  17. data/lib/stack_one/models/operations/hris_list_companies_groups_queryparam_filter.rb +33 -0
  18. data/lib/stack_one/models/operations/hris_list_companies_groups_request.rb +69 -0
  19. data/lib/stack_one/models/operations/hris_list_companies_groups_response.rb +49 -0
  20. data/lib/stack_one/models/operations/hris_list_division_groups_queryparam_filter.rb +33 -0
  21. data/lib/stack_one/models/operations/hris_list_division_groups_request.rb +69 -0
  22. data/lib/stack_one/models/operations/hris_list_division_groups_response.rb +49 -0
  23. data/lib/stack_one/models/operations/hris_list_shifts_queryparam_filter.rb +49 -0
  24. data/lib/stack_one/models/operations/hris_list_shifts_queryparam_status.rb +23 -0
  25. data/lib/stack_one/models/operations/hris_list_shifts_request.rb +69 -0
  26. data/lib/stack_one/models/operations/hris_list_shifts_response.rb +49 -0
  27. data/lib/stack_one/models/operations/hris_list_tasks_queryparam_filter.rb +33 -0
  28. data/lib/stack_one/models/operations/hris_list_tasks_request.rb +73 -0
  29. data/lib/stack_one/models/operations/hris_list_tasks_response.rb +49 -0
  30. data/lib/stack_one/models/operations.rb +26 -0
  31. data/lib/stack_one/models/shared/approval_status.rb +37 -0
  32. data/lib/stack_one/models/shared/data.rb +81 -0
  33. data/lib/stack_one/models/shared/hrisdivision.rb +73 -0
  34. data/lib/stack_one/models/shared/hrisdivision_4.rb +28 -0
  35. data/lib/stack_one/models/shared/hrisdivision_source_value.rb +28 -0
  36. data/lib/stack_one/models/shared/hrisdivision_type.rb +37 -0
  37. data/lib/stack_one/models/shared/hrisdivision_value.rb +26 -0
  38. data/lib/stack_one/models/shared/hrisdivisionspaginated.rb +45 -0
  39. data/lib/stack_one/models/shared/hrisdivisionsresult.rb +37 -0
  40. data/lib/stack_one/models/shared/hrisshift.rb +81 -0
  41. data/lib/stack_one/models/shared/hrisshift_4.rb +28 -0
  42. data/lib/stack_one/models/shared/hrisshift_schemas_4.rb +28 -0
  43. data/lib/stack_one/models/shared/hrisshift_schemas_source_value.rb +28 -0
  44. data/lib/stack_one/models/shared/hrisshift_schemas_value.rb +23 -0
  45. data/lib/stack_one/models/shared/hrisshift_source_value.rb +28 -0
  46. data/lib/stack_one/models/shared/hrisshift_status.rb +37 -0
  47. data/lib/stack_one/models/shared/hrisshift_value.rb +22 -0
  48. data/lib/stack_one/models/shared/hrisshiftresult.rb +37 -0
  49. data/lib/stack_one/models/shared/hrisshiftresult_4.rb +28 -0
  50. data/lib/stack_one/models/shared/hrisshiftresult_approval_status.rb +37 -0
  51. data/lib/stack_one/models/shared/hrisshiftresult_schemas_4.rb +28 -0
  52. data/lib/stack_one/models/shared/hrisshiftresult_schemas_source_value.rb +28 -0
  53. data/lib/stack_one/models/shared/hrisshiftresult_schemas_value.rb +23 -0
  54. data/lib/stack_one/models/shared/hrisshiftresult_source_value.rb +28 -0
  55. data/lib/stack_one/models/shared/hrisshiftresult_status.rb +37 -0
  56. data/lib/stack_one/models/shared/hrisshiftresult_value.rb +22 -0
  57. data/lib/stack_one/models/shared/hrisshiftspaginated.rb +41 -0
  58. data/lib/stack_one/models/shared/shiftbreak.rb +57 -0
  59. data/lib/stack_one/models/shared.rb +28 -0
  60. data/lib/stack_one/sdkconfiguration.rb +2 -2
  61. metadata +56 -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 Models
9
+ module Operations
10
+
11
+ # Filter parameters that allow greater customisation of the list response
12
+ class HrisListCompaniesGroupsQueryParamFilter
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Use a string with a date to only select results updated after that given date
17
+ field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after' } }
18
+
19
+
20
+ sig { params(updated_after: T.nilable(::String)).void }
21
+ def initialize(updated_after: nil)
22
+ @updated_after = updated_after
23
+ end
24
+
25
+ def ==(other)
26
+ return false unless other.is_a? self.class
27
+ return false unless @updated_after == other.updated_after
28
+ true
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,69 @@
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 Operations
10
+
11
+
12
+ class HrisListCompaniesGroupsRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The account identifier
17
+ field :x_account_id, ::String, { 'header': { 'field_name': 'x-account-id', 'style': 'simple', 'explode': false } }
18
+ # The comma separated list of fields that will be returned in the response (if empty, all fields are returned)
19
+ field :fields_, T.nilable(::String), { 'query_param': { 'field_name': 'fields', 'style': 'form', 'explode': true } }
20
+ # Filter parameters that allow greater customisation of the list response
21
+ field :filter, T.nilable(Models::Operations::HrisListCompaniesGroupsQueryParamFilter), { 'query_param': { 'field_name': 'filter', 'style': 'deepObject', 'explode': true } }
22
+ # The unified cursor
23
+ field :next_, T.nilable(::String), { 'query_param': { 'field_name': 'next', 'style': 'form', 'explode': true } }
24
+ # The page number of the results to fetch
25
+ #
26
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
27
+ field :page, T.nilable(::String), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
28
+ # The number of results per page (default value is 25)
29
+ field :page_size, T.nilable(::String), { 'query_param': { 'field_name': 'page_size', 'style': 'form', 'explode': true } }
30
+ # Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key
31
+ field :proxy, T.nilable(T::Hash[Symbol, ::Object]), { 'query_param': { 'field_name': 'proxy', 'style': 'deepObject', 'explode': true } }
32
+ # Indicates that the raw request result should be returned in addition to the mapped result (default value is false)
33
+ field :raw, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'raw', 'style': 'form', 'explode': true } }
34
+ # Use a string with a date to only select results updated after that given date
35
+ #
36
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
37
+ field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after', 'style': 'form', 'explode': true } }
38
+
39
+
40
+ sig { params(x_account_id: ::String, fields_: T.nilable(::String), filter: T.nilable(Models::Operations::HrisListCompaniesGroupsQueryParamFilter), next_: T.nilable(::String), page: T.nilable(::String), page_size: T.nilable(::String), proxy: T.nilable(T::Hash[Symbol, ::Object]), raw: T.nilable(T::Boolean), updated_after: T.nilable(::String)).void }
41
+ def initialize(x_account_id: nil, fields_: nil, filter: nil, next_: nil, page: nil, page_size: nil, proxy: nil, raw: nil, updated_after: nil)
42
+ @x_account_id = x_account_id
43
+ @fields_ = fields_
44
+ @filter = filter
45
+ @next_ = next_
46
+ @page = page
47
+ @page_size = page_size
48
+ @proxy = proxy
49
+ @raw = raw
50
+ @updated_after = updated_after
51
+ end
52
+
53
+ def ==(other)
54
+ return false unless other.is_a? self.class
55
+ return false unless @x_account_id == other.x_account_id
56
+ return false unless @fields_ == other.fields_
57
+ return false unless @filter == other.filter
58
+ return false unless @next_ == other.next_
59
+ return false unless @page == other.page
60
+ return false unless @page_size == other.page_size
61
+ return false unless @proxy == other.proxy
62
+ return false unless @raw == other.raw
63
+ return false unless @updated_after == other.updated_after
64
+ true
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,49 @@
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 Operations
10
+
11
+
12
+ class HrisListCompaniesGroupsResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # HTTP response content type for this operation
17
+ field :content_type, ::String
18
+
19
+ field :headers, T::Hash[Symbol, T::Array[::String]]
20
+ # Raw HTTP response; suitable for custom response parsing
21
+ field :raw_response, ::Faraday::Response
22
+ # HTTP response status code for this operation
23
+ field :status_code, ::Integer
24
+ # The list of companies groups was retrieved.
25
+ field :companies_paginated, T.nilable(Models::Shared::CompaniesPaginated)
26
+
27
+
28
+ sig { params(content_type: ::String, headers: T::Hash[Symbol, T::Array[::String]], raw_response: ::Faraday::Response, status_code: ::Integer, companies_paginated: T.nilable(Models::Shared::CompaniesPaginated)).void }
29
+ def initialize(content_type: nil, headers: nil, raw_response: nil, status_code: nil, companies_paginated: nil)
30
+ @content_type = content_type
31
+ @headers = headers
32
+ @raw_response = raw_response
33
+ @status_code = status_code
34
+ @companies_paginated = companies_paginated
35
+ end
36
+
37
+ def ==(other)
38
+ return false unless other.is_a? self.class
39
+ return false unless @content_type == other.content_type
40
+ return false unless @headers == other.headers
41
+ return false unless @raw_response == other.raw_response
42
+ return false unless @status_code == other.status_code
43
+ return false unless @companies_paginated == other.companies_paginated
44
+ true
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -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 Models
9
+ module Operations
10
+
11
+ # Filter parameters that allow greater customisation of the list response
12
+ class HrisListDivisionGroupsQueryParamFilter
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Use a string with a date to only select results updated after that given date
17
+ field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after' } }
18
+
19
+
20
+ sig { params(updated_after: T.nilable(::String)).void }
21
+ def initialize(updated_after: nil)
22
+ @updated_after = updated_after
23
+ end
24
+
25
+ def ==(other)
26
+ return false unless other.is_a? self.class
27
+ return false unless @updated_after == other.updated_after
28
+ true
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,69 @@
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 Operations
10
+
11
+
12
+ class HrisListDivisionGroupsRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The account identifier
17
+ field :x_account_id, ::String, { 'header': { 'field_name': 'x-account-id', 'style': 'simple', 'explode': false } }
18
+ # The comma separated list of fields that will be returned in the response (if empty, all fields are returned)
19
+ field :fields_, T.nilable(::String), { 'query_param': { 'field_name': 'fields', 'style': 'form', 'explode': true } }
20
+ # Filter parameters that allow greater customisation of the list response
21
+ field :filter, T.nilable(Models::Operations::HrisListDivisionGroupsQueryParamFilter), { 'query_param': { 'field_name': 'filter', 'style': 'deepObject', 'explode': true } }
22
+ # The unified cursor
23
+ field :next_, T.nilable(::String), { 'query_param': { 'field_name': 'next', 'style': 'form', 'explode': true } }
24
+ # The page number of the results to fetch
25
+ #
26
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
27
+ field :page, T.nilable(::String), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
28
+ # The number of results per page (default value is 25)
29
+ field :page_size, T.nilable(::String), { 'query_param': { 'field_name': 'page_size', 'style': 'form', 'explode': true } }
30
+ # Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key
31
+ field :proxy, T.nilable(T::Hash[Symbol, ::Object]), { 'query_param': { 'field_name': 'proxy', 'style': 'deepObject', 'explode': true } }
32
+ # Indicates that the raw request result should be returned in addition to the mapped result (default value is false)
33
+ field :raw, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'raw', 'style': 'form', 'explode': true } }
34
+ # Use a string with a date to only select results updated after that given date
35
+ #
36
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
37
+ field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after', 'style': 'form', 'explode': true } }
38
+
39
+
40
+ sig { params(x_account_id: ::String, fields_: T.nilable(::String), filter: T.nilable(Models::Operations::HrisListDivisionGroupsQueryParamFilter), next_: T.nilable(::String), page: T.nilable(::String), page_size: T.nilable(::String), proxy: T.nilable(T::Hash[Symbol, ::Object]), raw: T.nilable(T::Boolean), updated_after: T.nilable(::String)).void }
41
+ def initialize(x_account_id: nil, fields_: nil, filter: nil, next_: nil, page: nil, page_size: nil, proxy: nil, raw: nil, updated_after: nil)
42
+ @x_account_id = x_account_id
43
+ @fields_ = fields_
44
+ @filter = filter
45
+ @next_ = next_
46
+ @page = page
47
+ @page_size = page_size
48
+ @proxy = proxy
49
+ @raw = raw
50
+ @updated_after = updated_after
51
+ end
52
+
53
+ def ==(other)
54
+ return false unless other.is_a? self.class
55
+ return false unless @x_account_id == other.x_account_id
56
+ return false unless @fields_ == other.fields_
57
+ return false unless @filter == other.filter
58
+ return false unless @next_ == other.next_
59
+ return false unless @page == other.page
60
+ return false unless @page_size == other.page_size
61
+ return false unless @proxy == other.proxy
62
+ return false unless @raw == other.raw
63
+ return false unless @updated_after == other.updated_after
64
+ true
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,49 @@
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 Operations
10
+
11
+
12
+ class HrisListDivisionGroupsResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # HTTP response content type for this operation
17
+ field :content_type, ::String
18
+
19
+ field :headers, T::Hash[Symbol, T::Array[::String]]
20
+ # Raw HTTP response; suitable for custom response parsing
21
+ field :raw_response, ::Faraday::Response
22
+ # HTTP response status code for this operation
23
+ field :status_code, ::Integer
24
+ # The list of division groups was retrieved.
25
+ field :hris_divisions_paginated, T.nilable(Models::Shared::HRISDivisionsPaginated)
26
+
27
+
28
+ sig { params(content_type: ::String, headers: T::Hash[Symbol, T::Array[::String]], raw_response: ::Faraday::Response, status_code: ::Integer, hris_divisions_paginated: T.nilable(Models::Shared::HRISDivisionsPaginated)).void }
29
+ def initialize(content_type: nil, headers: nil, raw_response: nil, status_code: nil, hris_divisions_paginated: nil)
30
+ @content_type = content_type
31
+ @headers = headers
32
+ @raw_response = raw_response
33
+ @status_code = status_code
34
+ @hris_divisions_paginated = hris_divisions_paginated
35
+ end
36
+
37
+ def ==(other)
38
+ return false unless other.is_a? self.class
39
+ return false unless @content_type == other.content_type
40
+ return false unless @headers == other.headers
41
+ return false unless @raw_response == other.raw_response
42
+ return false unless @status_code == other.status_code
43
+ return false unless @hris_divisions_paginated == other.hris_divisions_paginated
44
+ true
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,49 @@
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 Operations
10
+
11
+ # HRIS Shifts filters
12
+ class HrisListShiftsQueryParamFilter
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Filter to select shifts by employee ID
17
+ field :employee_id, T.nilable(::String), { 'query_param': { 'field_name': 'employee_id' } }
18
+ # Filter shifts that end before this date
19
+ field :ends_before, T.nilable(::DateTime), { 'query_param': { 'field_name': 'ends_before' } }
20
+ # Filter shifts that start after this date
21
+ field :starts_after, T.nilable(::DateTime), { 'query_param': { 'field_name': 'starts_after' } }
22
+ # Filter to select shifts by status
23
+ field :status, T.nilable(Models::Operations::HrisListShiftsQueryParamStatus), { 'query_param': { 'field_name': 'status' } }
24
+ # Use a string with a date to only select results updated after that given date
25
+ field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after' } }
26
+
27
+
28
+ sig { params(employee_id: T.nilable(::String), ends_before: T.nilable(::DateTime), starts_after: T.nilable(::DateTime), status: T.nilable(Models::Operations::HrisListShiftsQueryParamStatus), updated_after: T.nilable(::String)).void }
29
+ def initialize(employee_id: nil, ends_before: nil, starts_after: nil, status: nil, updated_after: nil)
30
+ @employee_id = employee_id
31
+ @ends_before = ends_before
32
+ @starts_after = starts_after
33
+ @status = status
34
+ @updated_after = updated_after
35
+ end
36
+
37
+ def ==(other)
38
+ return false unless other.is_a? self.class
39
+ return false unless @employee_id == other.employee_id
40
+ return false unless @ends_before == other.ends_before
41
+ return false unless @starts_after == other.starts_after
42
+ return false unless @status == other.status
43
+ return false unless @updated_after == other.updated_after
44
+ true
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,23 @@
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 Operations
10
+
11
+ # HrisListShiftsQueryParamStatus - Filter to select shifts by status
12
+ class HrisListShiftsQueryParamStatus < T::Enum
13
+ enums do
14
+ DRAFT = new('draft')
15
+ PUBLISHED = new('published')
16
+ CONFIRMED = new('confirmed')
17
+ CANCELLED = new('cancelled')
18
+ UNMAPPED_VALUE = new('unmapped_value')
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,69 @@
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 Operations
10
+
11
+
12
+ class HrisListShiftsRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The account identifier
17
+ field :x_account_id, ::String, { 'header': { 'field_name': 'x-account-id', 'style': 'simple', 'explode': false } }
18
+ # The comma separated list of fields to return in the response (if empty, all fields are returned)
19
+ field :fields_, T.nilable(::String), { 'query_param': { 'field_name': 'fields', 'style': 'form', 'explode': true } }
20
+ # HRIS Shifts filters
21
+ field :filter, T.nilable(Models::Operations::HrisListShiftsQueryParamFilter), { 'query_param': { 'field_name': 'filter', 'style': 'deepObject', 'explode': true } }
22
+ # The unified cursor
23
+ field :next_, T.nilable(::String), { 'query_param': { 'field_name': 'next', 'style': 'form', 'explode': true } }
24
+ # The page number of the results to fetch
25
+ #
26
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
27
+ field :page, T.nilable(::String), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
28
+ # The number of results per page (default value is 25)
29
+ field :page_size, T.nilable(::String), { 'query_param': { 'field_name': 'page_size', 'style': 'form', 'explode': true } }
30
+ # Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key
31
+ field :proxy, T.nilable(T::Hash[Symbol, ::Object]), { 'query_param': { 'field_name': 'proxy', 'style': 'deepObject', 'explode': true } }
32
+ # Indicates that the raw request result should be returned in addition to the mapped result (default value is false)
33
+ field :raw, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'raw', 'style': 'form', 'explode': true } }
34
+ # Use a string with a date to only select results updated after that given date
35
+ #
36
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
37
+ field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after', 'style': 'form', 'explode': true } }
38
+
39
+
40
+ sig { params(x_account_id: ::String, fields_: T.nilable(::String), filter: T.nilable(Models::Operations::HrisListShiftsQueryParamFilter), next_: T.nilable(::String), page: T.nilable(::String), page_size: T.nilable(::String), proxy: T.nilable(T::Hash[Symbol, ::Object]), raw: T.nilable(T::Boolean), updated_after: T.nilable(::String)).void }
41
+ def initialize(x_account_id: nil, fields_: nil, filter: nil, next_: nil, page: nil, page_size: nil, proxy: nil, raw: nil, updated_after: nil)
42
+ @x_account_id = x_account_id
43
+ @fields_ = fields_
44
+ @filter = filter
45
+ @next_ = next_
46
+ @page = page
47
+ @page_size = page_size
48
+ @proxy = proxy
49
+ @raw = raw
50
+ @updated_after = updated_after
51
+ end
52
+
53
+ def ==(other)
54
+ return false unless other.is_a? self.class
55
+ return false unless @x_account_id == other.x_account_id
56
+ return false unless @fields_ == other.fields_
57
+ return false unless @filter == other.filter
58
+ return false unless @next_ == other.next_
59
+ return false unless @page == other.page
60
+ return false unless @page_size == other.page_size
61
+ return false unless @proxy == other.proxy
62
+ return false unless @raw == other.raw
63
+ return false unless @updated_after == other.updated_after
64
+ true
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,49 @@
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 Operations
10
+
11
+
12
+ class HrisListShiftsResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # HTTP response content type for this operation
17
+ field :content_type, ::String
18
+
19
+ field :headers, T::Hash[Symbol, T::Array[::String]]
20
+ # Raw HTTP response; suitable for custom response parsing
21
+ field :raw_response, ::Faraday::Response
22
+ # HTTP response status code for this operation
23
+ field :status_code, ::Integer
24
+ # The list of shifts was retrieved.
25
+ field :hris_shifts_paginated, T.nilable(Models::Shared::HrisShiftsPaginated)
26
+
27
+
28
+ sig { params(content_type: ::String, headers: T::Hash[Symbol, T::Array[::String]], raw_response: ::Faraday::Response, status_code: ::Integer, hris_shifts_paginated: T.nilable(Models::Shared::HrisShiftsPaginated)).void }
29
+ def initialize(content_type: nil, headers: nil, raw_response: nil, status_code: nil, hris_shifts_paginated: nil)
30
+ @content_type = content_type
31
+ @headers = headers
32
+ @raw_response = raw_response
33
+ @status_code = status_code
34
+ @hris_shifts_paginated = hris_shifts_paginated
35
+ end
36
+
37
+ def ==(other)
38
+ return false unless other.is_a? self.class
39
+ return false unless @content_type == other.content_type
40
+ return false unless @headers == other.headers
41
+ return false unless @raw_response == other.raw_response
42
+ return false unless @status_code == other.status_code
43
+ return false unless @hris_shifts_paginated == other.hris_shifts_paginated
44
+ true
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -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 Models
9
+ module Operations
10
+
11
+ # Filter parameters that allow greater customisation of the list response
12
+ class HrisListTasksQueryParamFilter
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Use a string with a date to only select results updated after that given date
17
+ field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after' } }
18
+
19
+
20
+ sig { params(updated_after: T.nilable(::String)).void }
21
+ def initialize(updated_after: nil)
22
+ @updated_after = updated_after
23
+ end
24
+
25
+ def ==(other)
26
+ return false unless other.is_a? self.class
27
+ return false unless @updated_after == other.updated_after
28
+ true
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,73 @@
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 Operations
10
+
11
+
12
+ class HrisListTasksRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The account identifier
17
+ field :x_account_id, ::String, { 'header': { 'field_name': 'x-account-id', 'style': 'simple', 'explode': false } }
18
+ # The comma separated list of fields that will be expanded in the response
19
+ field :expand, T.nilable(::String), { 'query_param': { 'field_name': 'expand', 'style': 'form', 'explode': true } }
20
+ # The comma separated list of fields that will be returned in the response (if empty, all fields are returned)
21
+ field :fields_, T.nilable(::String), { 'query_param': { 'field_name': 'fields', 'style': 'form', 'explode': true } }
22
+ # Filter parameters that allow greater customisation of the list response
23
+ field :filter, T.nilable(Models::Operations::HrisListTasksQueryParamFilter), { 'query_param': { 'field_name': 'filter', 'style': 'deepObject', 'explode': true } }
24
+ # The unified cursor
25
+ field :next_, T.nilable(::String), { 'query_param': { 'field_name': 'next', 'style': 'form', 'explode': true } }
26
+ # The page number of the results to fetch
27
+ #
28
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
29
+ field :page, T.nilable(::String), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
30
+ # The number of results per page (default value is 25)
31
+ field :page_size, T.nilable(::String), { 'query_param': { 'field_name': 'page_size', 'style': 'form', 'explode': true } }
32
+ # Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key
33
+ field :proxy, T.nilable(T::Hash[Symbol, ::Object]), { 'query_param': { 'field_name': 'proxy', 'style': 'deepObject', 'explode': true } }
34
+ # Indicates that the raw request result should be returned in addition to the mapped result (default value is false)
35
+ field :raw, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'raw', 'style': 'form', 'explode': true } }
36
+ # Use a string with a date to only select results updated after that given date
37
+ #
38
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
39
+ field :updated_after, T.nilable(::String), { 'query_param': { 'field_name': 'updated_after', 'style': 'form', 'explode': true } }
40
+
41
+
42
+ sig { params(x_account_id: ::String, expand: T.nilable(::String), fields_: T.nilable(::String), filter: T.nilable(Models::Operations::HrisListTasksQueryParamFilter), next_: T.nilable(::String), page: T.nilable(::String), page_size: T.nilable(::String), proxy: T.nilable(T::Hash[Symbol, ::Object]), raw: T.nilable(T::Boolean), updated_after: T.nilable(::String)).void }
43
+ def initialize(x_account_id: nil, expand: nil, fields_: nil, filter: nil, next_: nil, page: nil, page_size: nil, proxy: nil, raw: nil, updated_after: nil)
44
+ @x_account_id = x_account_id
45
+ @expand = expand
46
+ @fields_ = fields_
47
+ @filter = filter
48
+ @next_ = next_
49
+ @page = page
50
+ @page_size = page_size
51
+ @proxy = proxy
52
+ @raw = raw
53
+ @updated_after = updated_after
54
+ end
55
+
56
+ def ==(other)
57
+ return false unless other.is_a? self.class
58
+ return false unless @x_account_id == other.x_account_id
59
+ return false unless @expand == other.expand
60
+ return false unless @fields_ == other.fields_
61
+ return false unless @filter == other.filter
62
+ return false unless @next_ == other.next_
63
+ return false unless @page == other.page
64
+ return false unless @page_size == other.page_size
65
+ return false unless @proxy == other.proxy
66
+ return false unless @raw == other.raw
67
+ return false unless @updated_after == other.updated_after
68
+ true
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,49 @@
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 Operations
10
+
11
+
12
+ class HrisListTasksResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # HTTP response content type for this operation
17
+ field :content_type, ::String
18
+
19
+ field :headers, T::Hash[Symbol, T::Array[::String]]
20
+ # Raw HTTP response; suitable for custom response parsing
21
+ field :raw_response, ::Faraday::Response
22
+ # HTTP response status code for this operation
23
+ field :status_code, ::Integer
24
+ # The list of tasks was retrieved.
25
+ field :tasks_paginated, T.nilable(Models::Shared::TasksPaginated)
26
+
27
+
28
+ sig { params(content_type: ::String, headers: T::Hash[Symbol, T::Array[::String]], raw_response: ::Faraday::Response, status_code: ::Integer, tasks_paginated: T.nilable(Models::Shared::TasksPaginated)).void }
29
+ def initialize(content_type: nil, headers: nil, raw_response: nil, status_code: nil, tasks_paginated: nil)
30
+ @content_type = content_type
31
+ @headers = headers
32
+ @raw_response = raw_response
33
+ @status_code = status_code
34
+ @tasks_paginated = tasks_paginated
35
+ end
36
+
37
+ def ==(other)
38
+ return false unless other.is_a? self.class
39
+ return false unless @content_type == other.content_type
40
+ return false unless @headers == other.headers
41
+ return false unless @raw_response == other.raw_response
42
+ return false unless @status_code == other.status_code
43
+ return false unless @tasks_paginated == other.tasks_paginated
44
+ true
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end