gusto_embedded_client 0.3.0 → 0.3.1
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.
- checksums.yaml +4 -4
- data/lib/gusto_embedded/client.rb +2 -1
- data/lib/gusto_embedded/companybenefits.rb +30 -2
- data/lib/gusto_embedded/contractorpayments.rb +16 -2
- data/lib/gusto_embedded/earningtypes.rb +16 -2
- data/lib/gusto_embedded/employeebenefits.rb +30 -2
- data/lib/gusto_embedded/employeepaymentmethod.rb +30 -2
- data/lib/gusto_embedded/externalpayrolls.rb +60 -4
- data/lib/gusto_embedded/information_requests.rb +6 -3
- data/lib/gusto_embedded/models/errors/payroll_digest_conflict_error.rb +32 -0
- data/lib/gusto_embedded/models/errors/payroll_digest_conflict_error.rbi +13 -0
- data/lib/gusto_embedded/models/errors/payroll_digest_conflict_error_errors.rb +44 -0
- data/lib/gusto_embedded/models/errors/payroll_digest_conflict_error_errors.rbi +19 -0
- data/lib/gusto_embedded/models/errors/payroll_digest_conflict_error_metadata.rb +32 -0
- data/lib/gusto_embedded/models/errors/payroll_digest_conflict_error_metadata.rbi +13 -0
- data/lib/gusto_embedded/models/errors.rb +3 -0
- data/lib/gusto_embedded/models/operations/get_information_requests_request.rb +6 -2
- data/lib/gusto_embedded/models/operations/get_information_requests_request.rbi +2 -0
- data/lib/gusto_embedded/models/operations/get_v1_companies_company_id_payrolls_payroll_id_request.rb +3 -3
- data/lib/gusto_embedded/models/operations/get_v1_companies_company_uuid_contractors_request.rb +1 -1
- data/lib/gusto_embedded/models/operations/get_v1_company_forms_request.rb +3 -3
- data/lib/gusto_embedded/models/operations/get_v1_payroll_digests_payroll_digest_uuid_header_x_gusto_api_version.rb +18 -0
- data/lib/gusto_embedded/models/operations/get_v1_payroll_digests_payroll_digest_uuid_header_x_gusto_api_version.rbi +11 -0
- data/lib/gusto_embedded/models/operations/get_v1_payroll_digests_payroll_digest_uuid_request.rb +36 -0
- data/lib/gusto_embedded/models/operations/get_v1_payroll_digests_payroll_digest_uuid_request.rbi +15 -0
- data/lib/gusto_embedded/models/operations/get_v1_payroll_digests_payroll_digest_uuid_response.rb +44 -0
- data/lib/gusto_embedded/models/operations/get_v1_payroll_digests_payroll_digest_uuid_response.rbi +19 -0
- data/lib/gusto_embedded/models/operations/get_v1_payroll_digests_payroll_digest_uuid_security.rb +32 -0
- data/lib/gusto_embedded/models/operations/get_v1_payroll_digests_payroll_digest_uuid_security.rbi +13 -0
- data/lib/gusto_embedded/models/operations/post_v1_companies_company_id_reports_employees_annual_fica_wage_response.rb +5 -5
- data/lib/gusto_embedded/models/operations/post_v1_companies_company_id_reports_employees_annual_fica_wage_response.rbi +2 -2
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_batch.rb +36 -0
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_batch.rbi +15 -0
- data/lib/gusto_embedded/models/operations/{sort_by.rb → post_v1_payroll_digests_batch_action.rb} +3 -4
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_batch_action.rbi +11 -0
- data/lib/gusto_embedded/models/operations/{queryparam_sort_by.rb → post_v1_payroll_digests_entity_type.rb} +3 -4
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_entity_type.rbi +11 -0
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_header_x_gusto_api_version.rb +18 -0
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_header_x_gusto_api_version.rbi +11 -0
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_request.rb +36 -0
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_request.rbi +15 -0
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_requestbody.rb +40 -0
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_requestbody.rbi +17 -0
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_response.rb +44 -0
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_response.rbi +19 -0
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_security.rb +32 -0
- data/lib/gusto_embedded/models/operations/post_v1_payroll_digests_security.rbi +13 -0
- data/lib/gusto_embedded/models/operations/put_v1_companies_company_id_payrolls_payroll_id_prepare_request.rb +3 -3
- data/lib/gusto_embedded/models/operations/split_by.rb +1 -1
- data/lib/gusto_embedded/models/operations.rb +12 -4
- data/lib/gusto_embedded/models/shared/ach_transaction_recipient_type.rb +1 -1
- data/lib/gusto_embedded/models/shared/batch_action.rb +18 -0
- data/lib/gusto_embedded/models/{operations/sort_by.rbi → shared/batch_action.rbi} +2 -2
- data/lib/gusto_embedded/models/shared/blockers.rb +36 -0
- data/lib/gusto_embedded/models/shared/blockers.rbi +15 -0
- data/lib/gusto_embedded/models/shared/columns.rb +2 -0
- data/lib/gusto_embedded/models/shared/deduction_reduces_taxable_income.rb +1 -1
- data/lib/gusto_embedded/models/shared/employee_benefit.rb +6 -6
- data/lib/gusto_embedded/models/shared/employee_benefit.rbi +2 -2
- data/lib/gusto_embedded/models/shared/employee_benefit_create_request_deduction_reduces_taxable_income.rb +1 -1
- data/lib/gusto_embedded/models/shared/employee_benefit_create_request_limit_option.rb +1 -6
- data/lib/gusto_embedded/models/shared/employee_benefit_for_company_benefit.rb +6 -6
- data/lib/gusto_embedded/models/shared/employee_benefit_for_company_benefit.rbi +2 -2
- data/lib/gusto_embedded/models/shared/employee_benefit_for_company_benefit_deduction_reduces_taxable_income.rb +1 -1
- data/lib/gusto_embedded/models/shared/employee_benefit_update_request.rb +6 -6
- data/lib/gusto_embedded/models/shared/employee_benefit_update_request.rbi +2 -2
- data/lib/gusto_embedded/models/shared/employee_benefit_update_request_deduction_reduces_taxable_income.rb +1 -1
- data/lib/gusto_embedded/models/shared/employee_benefit_update_request_limit_option.rb +1 -6
- data/lib/gusto_embedded/models/shared/employee_state_taxes_list.rb +6 -2
- data/lib/gusto_embedded/models/shared/employee_state_taxes_list.rbi +2 -0
- data/lib/gusto_embedded/models/{operations/post_v1_companies_company_id_reports_employees_annual_fica_wage_responsebody.rb → shared/employees_annual_fica_wage_report_acceptance.rb} +6 -6
- data/lib/gusto_embedded/models/{operations/post_v1_companies_company_id_reports_employees_annual_fica_wage_responsebody.rbi → shared/employees_annual_fica_wage_report_acceptance.rbi} +2 -2
- data/lib/gusto_embedded/models/shared/entity_type.rb +1 -1
- data/lib/gusto_embedded/models/shared/funding_type.rb +4 -2
- data/lib/gusto_embedded/models/shared/garnishment_request_garnishment_type.rb +1 -1
- data/lib/gusto_embedded/models/shared/information_request_type.rb +1 -1
- data/lib/gusto_embedded/models/shared/integration_type.rb +1 -1
- data/lib/gusto_embedded/models/shared/name.rb +1 -1
- data/lib/gusto_embedded/models/shared/pay_schedule.rb +40 -0
- data/lib/gusto_embedded/models/shared/pay_schedule.rbi +17 -0
- data/lib/gusto_embedded/models/shared/payroll_digest.rb +44 -0
- data/lib/gusto_embedded/models/shared/payroll_digest.rbi +19 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results.rb +68 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results.rbi +31 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_category.rb +21 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_category.rbi +11 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_entity_type.rb +18 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_entity_type.rbi +11 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_exclusions.rb +52 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_exclusions.rbi +23 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_exclusions_entity_type.rb +18 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_exclusions_entity_type.rbi +11 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_exclusions_status.rb +18 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_exclusions_status.rbi +11 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_pay_period.rb +44 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_pay_period.rbi +19 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_results.rb +56 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_results.rbi +25 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_results_status.rb +20 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_results_status.rbi +11 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_status.rb +21 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_status.rbi +11 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_totals.rb +40 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_results_totals.rbi +17 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_status.rb +21 -0
- data/lib/gusto_embedded/models/shared/payroll_digest_status.rbi +11 -0
- data/lib/gusto_embedded/models/shared/payroll_employee_compensations_type_payment_method.rb +1 -1
- data/lib/gusto_embedded/models/shared/payroll_show_payment_method.rb +1 -1
- data/lib/gusto_embedded/models/shared/payroll_unprocessed_employee_compensations_type_payment_method.rb +1 -1
- data/lib/gusto_embedded/models/shared/payrolls.rb +60 -0
- data/lib/gusto_embedded/models/shared/payrolls.rbi +27 -0
- data/lib/gusto_embedded/models/shared/update_garnishment_request_garnishment_type.rb +1 -1
- data/lib/gusto_embedded/models/shared.rb +18 -0
- data/lib/gusto_embedded/payroll_digests.rb +342 -0
- data/lib/gusto_embedded/reports.rb +2 -2
- data/lib/gusto_embedded/sdkconfiguration.rb +3 -3
- data/lib/gusto_embedded/time_off_requests.rb +30 -2
- data/lib/gusto_embedded_client.rb +1 -0
- metadata +69 -10
- data/lib/gusto_embedded/models/operations/get_v1_company_forms_queryparam_sort_by.rb +0 -23
- data/lib/gusto_embedded/models/operations/get_v1_company_forms_queryparam_sort_by.rbi +0 -11
- data/lib/gusto_embedded/models/operations/queryparam_sort_by.rbi +0 -11
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
|
|
11
|
+
class PaySchedule
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# UUID of the pay schedule.
|
|
16
|
+
field :uuid, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('uuid') } }
|
|
17
|
+
# Human-friendly pay frequency (e.g. "Every other week").
|
|
18
|
+
field :frequency, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('frequency') } }
|
|
19
|
+
# Custom name for the pay schedule, when set.
|
|
20
|
+
field :custom_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('custom_name') } }
|
|
21
|
+
|
|
22
|
+
sig { params(uuid: T.nilable(::String), frequency: T.nilable(::String), custom_name: T.nilable(::String)).void }
|
|
23
|
+
def initialize(uuid: nil, frequency: nil, custom_name: nil)
|
|
24
|
+
@uuid = uuid
|
|
25
|
+
@frequency = frequency
|
|
26
|
+
@custom_name = custom_name
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
30
|
+
def ==(other)
|
|
31
|
+
return false unless other.is_a? self.class
|
|
32
|
+
return false unless @uuid == other.uuid
|
|
33
|
+
return false unless @frequency == other.frequency
|
|
34
|
+
return false unless @custom_name == other.custom_name
|
|
35
|
+
true
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GustoEmbedded::Models::Shared::PaySchedule
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GustoEmbedded::Models::Shared::PaySchedule
|
|
11
|
+
def uuid(); end
|
|
12
|
+
def uuid=(str_); end
|
|
13
|
+
def frequency(); end
|
|
14
|
+
def frequency=(str_); end
|
|
15
|
+
def custom_name(); end
|
|
16
|
+
def custom_name=(str_); end
|
|
17
|
+
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# A payroll digest batch request.
|
|
11
|
+
class PayrollDigest
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The unique identifier of the payroll digest batch.
|
|
16
|
+
field :uuid, ::String, { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('uuid'), required: true } }
|
|
17
|
+
# The idempotency key provided when creating the batch.
|
|
18
|
+
field :idempotency_key, ::String, { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('idempotency_key'), required: true } }
|
|
19
|
+
# The action being performed on the batch.
|
|
20
|
+
field :batch_action, Models::Shared::BatchAction, { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('batch_action'), required: true, 'decoder': ::GustoEmbedded::Utils.enum_from_string(Models::Shared::BatchAction, false) } }
|
|
21
|
+
# The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`.
|
|
22
|
+
field :status, Models::Shared::PayrollDigestStatus, { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('status'), required: true, 'decoder': ::GustoEmbedded::Utils.enum_from_string(Models::Shared::PayrollDigestStatus, false) } }
|
|
23
|
+
|
|
24
|
+
sig { params(uuid: ::String, idempotency_key: ::String, batch_action: Models::Shared::BatchAction, status: Models::Shared::PayrollDigestStatus).void }
|
|
25
|
+
def initialize(uuid:, idempotency_key:, batch_action:, status:)
|
|
26
|
+
@uuid = uuid
|
|
27
|
+
@idempotency_key = idempotency_key
|
|
28
|
+
@batch_action = batch_action
|
|
29
|
+
@status = status
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
33
|
+
def ==(other)
|
|
34
|
+
return false unless other.is_a? self.class
|
|
35
|
+
return false unless @uuid == other.uuid
|
|
36
|
+
return false unless @idempotency_key == other.idempotency_key
|
|
37
|
+
return false unless @batch_action == other.batch_action
|
|
38
|
+
return false unless @status == other.status
|
|
39
|
+
true
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GustoEmbedded::Models::Shared::PayrollDigest
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GustoEmbedded::Models::Shared::PayrollDigest
|
|
11
|
+
def uuid(); end
|
|
12
|
+
def uuid=(str_); end
|
|
13
|
+
def idempotency_key(); end
|
|
14
|
+
def idempotency_key=(str_); end
|
|
15
|
+
def batch_action(); end
|
|
16
|
+
def batch_action=(str_); end
|
|
17
|
+
def status(); end
|
|
18
|
+
def status=(str_); end
|
|
19
|
+
end
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# A payroll digest batch with processing results.
|
|
11
|
+
class PayrollDigestResults
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The unique identifier of the payroll digest batch.
|
|
16
|
+
field :uuid, ::String, { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('uuid'), required: true } }
|
|
17
|
+
# The idempotency key provided when creating the batch.
|
|
18
|
+
field :idempotency_key, ::String, { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('idempotency_key'), required: true } }
|
|
19
|
+
# The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`.
|
|
20
|
+
field :status, Models::Shared::PayrollDigestResultsStatus, { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('status'), required: true, 'decoder': ::GustoEmbedded::Utils.enum_from_string(Models::Shared::PayrollDigestResultsStatus, false) } }
|
|
21
|
+
# The timestamp when the batch was submitted.
|
|
22
|
+
field :submitted_at, ::DateTime, { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('submitted_at'), required: true, 'decoder': ::GustoEmbedded::Utils.datetime_from_iso_format(false) } }
|
|
23
|
+
# The number of companies successfully processed. Only present once the batch reaches a terminal status.
|
|
24
|
+
field :processed_items, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('processed_items') } }
|
|
25
|
+
# The number of companies excluded from processing. Only present once the batch reaches a terminal status.
|
|
26
|
+
field :excluded_items, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('excluded_items') } }
|
|
27
|
+
# Per-company results. Only present once the batch reaches a terminal status. Includes successfully processed companies (with their `payrolls` array, which may be empty when the company has no payrolls in the date window).
|
|
28
|
+
field :results, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::PayrollDigestResultsResults)), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('results') } }
|
|
29
|
+
# Companies that could not be processed. Only present once the batch reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of `results` or `exclusions`.
|
|
30
|
+
field :exclusions, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::PayrollDigestResultsExclusions)), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('exclusions') } }
|
|
31
|
+
# The timestamp when the batch processing completed.
|
|
32
|
+
field :completed_at, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('completed_at'), 'decoder': ::GustoEmbedded::Utils.datetime_from_iso_format(true) } }
|
|
33
|
+
# The number of companies submitted in the batch.
|
|
34
|
+
field :submitted_items, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('submitted_items') } }
|
|
35
|
+
|
|
36
|
+
sig { params(uuid: ::String, idempotency_key: ::String, status: Models::Shared::PayrollDigestResultsStatus, submitted_at: ::DateTime, processed_items: T.nilable(::Integer), excluded_items: T.nilable(::Integer), results: T.nilable(T::Array[Models::Shared::PayrollDigestResultsResults]), exclusions: T.nilable(T::Array[Models::Shared::PayrollDigestResultsExclusions]), completed_at: T.nilable(::DateTime), submitted_items: T.nilable(::Integer)).void }
|
|
37
|
+
def initialize(uuid:, idempotency_key:, status:, submitted_at:, processed_items: nil, excluded_items: nil, results: nil, exclusions: nil, completed_at: nil, submitted_items: nil)
|
|
38
|
+
@uuid = uuid
|
|
39
|
+
@idempotency_key = idempotency_key
|
|
40
|
+
@status = status
|
|
41
|
+
@submitted_at = submitted_at
|
|
42
|
+
@processed_items = processed_items
|
|
43
|
+
@excluded_items = excluded_items
|
|
44
|
+
@results = results
|
|
45
|
+
@exclusions = exclusions
|
|
46
|
+
@completed_at = completed_at
|
|
47
|
+
@submitted_items = submitted_items
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
51
|
+
def ==(other)
|
|
52
|
+
return false unless other.is_a? self.class
|
|
53
|
+
return false unless @uuid == other.uuid
|
|
54
|
+
return false unless @idempotency_key == other.idempotency_key
|
|
55
|
+
return false unless @status == other.status
|
|
56
|
+
return false unless @submitted_at == other.submitted_at
|
|
57
|
+
return false unless @processed_items == other.processed_items
|
|
58
|
+
return false unless @excluded_items == other.excluded_items
|
|
59
|
+
return false unless @results == other.results
|
|
60
|
+
return false unless @exclusions == other.exclusions
|
|
61
|
+
return false unless @completed_at == other.completed_at
|
|
62
|
+
return false unless @submitted_items == other.submitted_items
|
|
63
|
+
true
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResults
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResults
|
|
11
|
+
def uuid(); end
|
|
12
|
+
def uuid=(str_); end
|
|
13
|
+
def idempotency_key(); end
|
|
14
|
+
def idempotency_key=(str_); end
|
|
15
|
+
def status(); end
|
|
16
|
+
def status=(str_); end
|
|
17
|
+
def submitted_at(); end
|
|
18
|
+
def submitted_at=(str_); end
|
|
19
|
+
def processed_items(); end
|
|
20
|
+
def processed_items=(str_); end
|
|
21
|
+
def excluded_items(); end
|
|
22
|
+
def excluded_items=(str_); end
|
|
23
|
+
def results(); end
|
|
24
|
+
def results=(str_); end
|
|
25
|
+
def exclusions(); end
|
|
26
|
+
def exclusions=(str_); end
|
|
27
|
+
def completed_at(); end
|
|
28
|
+
def completed_at=(str_); end
|
|
29
|
+
def submitted_items(); end
|
|
30
|
+
def submitted_items=(str_); end
|
|
31
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# PayrollDigestResultsCategory - Machine-readable category for why the company was excluded.
|
|
11
|
+
class PayrollDigestResultsCategory < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
NOT_FOUND = new('not_found')
|
|
14
|
+
COMPANY_INACTIVE = new('company_inactive')
|
|
15
|
+
DUPLICATE = new('duplicate')
|
|
16
|
+
INTERNAL_ERROR = new('internal_error')
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# PayrollDigestResultsEntityType - The type of entity this result represents.
|
|
11
|
+
class PayrollDigestResultsEntityType < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
COMPANY = new('company')
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsEntityType
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsEntityType
|
|
11
|
+
end
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
|
|
11
|
+
class PayrollDigestResultsExclusions
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The index of this company in the original POST batch array.
|
|
16
|
+
field :idx, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('idx') } }
|
|
17
|
+
# The type of entity this exclusion represents.
|
|
18
|
+
field :entity_type, Crystalline::Nilable.new(Models::Shared::PayrollDigestResultsExclusionsEntityType), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('entity_type'), 'decoder': ::GustoEmbedded::Utils.enum_from_string(Models::Shared::PayrollDigestResultsExclusionsEntityType, true) } }
|
|
19
|
+
# The UUID of the excluded company.
|
|
20
|
+
field :uuid, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('uuid') } }
|
|
21
|
+
# The status of this company's digest computation.
|
|
22
|
+
field :status, Crystalline::Nilable.new(Models::Shared::PayrollDigestResultsExclusionsStatus), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('status'), 'decoder': ::GustoEmbedded::Utils.enum_from_string(Models::Shared::PayrollDigestResultsExclusionsStatus, true) } }
|
|
23
|
+
# Machine-readable category for why the company was excluded.
|
|
24
|
+
field :category, Crystalline::Nilable.new(Models::Shared::PayrollDigestResultsCategory), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('category'), 'decoder': ::GustoEmbedded::Utils.enum_from_string(Models::Shared::PayrollDigestResultsCategory, true) } }
|
|
25
|
+
# Human-readable explanation for the exclusion.
|
|
26
|
+
field :message, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('message') } }
|
|
27
|
+
|
|
28
|
+
sig { params(idx: T.nilable(::Integer), entity_type: T.nilable(Models::Shared::PayrollDigestResultsExclusionsEntityType), uuid: T.nilable(::String), status: T.nilable(Models::Shared::PayrollDigestResultsExclusionsStatus), category: T.nilable(Models::Shared::PayrollDigestResultsCategory), message: T.nilable(::String)).void }
|
|
29
|
+
def initialize(idx: nil, entity_type: nil, uuid: nil, status: nil, category: nil, message: nil)
|
|
30
|
+
@idx = idx
|
|
31
|
+
@entity_type = entity_type
|
|
32
|
+
@uuid = uuid
|
|
33
|
+
@status = status
|
|
34
|
+
@category = category
|
|
35
|
+
@message = message
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
39
|
+
def ==(other)
|
|
40
|
+
return false unless other.is_a? self.class
|
|
41
|
+
return false unless @idx == other.idx
|
|
42
|
+
return false unless @entity_type == other.entity_type
|
|
43
|
+
return false unless @uuid == other.uuid
|
|
44
|
+
return false unless @status == other.status
|
|
45
|
+
return false unless @category == other.category
|
|
46
|
+
return false unless @message == other.message
|
|
47
|
+
true
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsExclusions
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsExclusions
|
|
11
|
+
def idx(); end
|
|
12
|
+
def idx=(str_); end
|
|
13
|
+
def entity_type(); end
|
|
14
|
+
def entity_type=(str_); end
|
|
15
|
+
def uuid(); end
|
|
16
|
+
def uuid=(str_); end
|
|
17
|
+
def status(); end
|
|
18
|
+
def status=(str_); end
|
|
19
|
+
def category(); end
|
|
20
|
+
def category=(str_); end
|
|
21
|
+
def message(); end
|
|
22
|
+
def message=(str_); end
|
|
23
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# PayrollDigestResultsExclusionsEntityType - The type of entity this exclusion represents.
|
|
11
|
+
class PayrollDigestResultsExclusionsEntityType < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
COMPANY = new('company')
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsExclusionsEntityType
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsExclusionsEntityType
|
|
11
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# PayrollDigestResultsExclusionsStatus - The status of this company's digest computation.
|
|
11
|
+
class PayrollDigestResultsExclusionsStatus < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
FAILED = new('failed')
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsExclusionsStatus
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsExclusionsStatus
|
|
11
|
+
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
|
|
11
|
+
class PayrollDigestResultsPayPeriod
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# First day of the pay period.
|
|
16
|
+
field :start_date, Crystalline::Nilable.new(::Date), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('start_date'), 'decoder': ::GustoEmbedded::Utils.date_from_iso_format(true) } }
|
|
17
|
+
# Last day of the pay period.
|
|
18
|
+
field :end_date, Crystalline::Nilable.new(::Date), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('end_date'), 'decoder': ::GustoEmbedded::Utils.date_from_iso_format(true) } }
|
|
19
|
+
# The date employees get paid.
|
|
20
|
+
field :check_date, Crystalline::Nilable.new(::Date), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('check_date'), 'decoder': ::GustoEmbedded::Utils.date_from_iso_format(true) } }
|
|
21
|
+
# The deadline to run payroll for this pay period.
|
|
22
|
+
field :run_payroll_by, Crystalline::Nilable.new(::Date), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('run_payroll_by'), 'decoder': ::GustoEmbedded::Utils.date_from_iso_format(true) } }
|
|
23
|
+
|
|
24
|
+
sig { params(start_date: T.nilable(::Date), end_date: T.nilable(::Date), check_date: T.nilable(::Date), run_payroll_by: T.nilable(::Date)).void }
|
|
25
|
+
def initialize(start_date: nil, end_date: nil, check_date: nil, run_payroll_by: nil)
|
|
26
|
+
@start_date = start_date
|
|
27
|
+
@end_date = end_date
|
|
28
|
+
@check_date = check_date
|
|
29
|
+
@run_payroll_by = run_payroll_by
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
33
|
+
def ==(other)
|
|
34
|
+
return false unless other.is_a? self.class
|
|
35
|
+
return false unless @start_date == other.start_date
|
|
36
|
+
return false unless @end_date == other.end_date
|
|
37
|
+
return false unless @check_date == other.check_date
|
|
38
|
+
return false unless @run_payroll_by == other.run_payroll_by
|
|
39
|
+
true
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsPayPeriod
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsPayPeriod
|
|
11
|
+
def start_date(); end
|
|
12
|
+
def start_date=(str_); end
|
|
13
|
+
def end_date(); end
|
|
14
|
+
def end_date=(str_); end
|
|
15
|
+
def check_date(); end
|
|
16
|
+
def check_date=(str_); end
|
|
17
|
+
def run_payroll_by(); end
|
|
18
|
+
def run_payroll_by=(str_); end
|
|
19
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
|
|
11
|
+
class PayrollDigestResultsResults
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The index of this company in the original POST batch array.
|
|
16
|
+
field :idx, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('idx') } }
|
|
17
|
+
# The type of entity this result represents.
|
|
18
|
+
field :entity_type, Crystalline::Nilable.new(Models::Shared::PayrollDigestResultsEntityType), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('entity_type'), 'decoder': ::GustoEmbedded::Utils.enum_from_string(Models::Shared::PayrollDigestResultsEntityType, true) } }
|
|
19
|
+
# The UUID of the company.
|
|
20
|
+
field :uuid, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('uuid') } }
|
|
21
|
+
# The legal/display name of the company.
|
|
22
|
+
field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('name') } }
|
|
23
|
+
# The status of this company's digest computation.
|
|
24
|
+
field :status, Crystalline::Nilable.new(Models::Shared::PayrollDigestResultsResultsStatus), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('status'), 'decoder': ::GustoEmbedded::Utils.enum_from_string(Models::Shared::PayrollDigestResultsResultsStatus, true) } }
|
|
25
|
+
# Reasons the company cannot currently run payroll. Applies to every payroll in this company's `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there are no blockers.
|
|
26
|
+
field :blockers, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::Blockers)), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('blockers') } }
|
|
27
|
+
# Payrolls for this company within the digest date window (7 days past, 30–60 days future). May be empty.
|
|
28
|
+
field :payrolls, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::Payrolls)), { 'format_json': { 'letter_case': ::GustoEmbedded::Utils.field_name('payrolls') } }
|
|
29
|
+
|
|
30
|
+
sig { params(idx: T.nilable(::Integer), entity_type: T.nilable(Models::Shared::PayrollDigestResultsEntityType), uuid: T.nilable(::String), name: T.nilable(::String), status: T.nilable(Models::Shared::PayrollDigestResultsResultsStatus), blockers: T.nilable(T::Array[Models::Shared::Blockers]), payrolls: T.nilable(T::Array[Models::Shared::Payrolls])).void }
|
|
31
|
+
def initialize(idx: nil, entity_type: nil, uuid: nil, name: nil, status: nil, blockers: nil, payrolls: nil)
|
|
32
|
+
@idx = idx
|
|
33
|
+
@entity_type = entity_type
|
|
34
|
+
@uuid = uuid
|
|
35
|
+
@name = name
|
|
36
|
+
@status = status
|
|
37
|
+
@blockers = blockers
|
|
38
|
+
@payrolls = payrolls
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
42
|
+
def ==(other)
|
|
43
|
+
return false unless other.is_a? self.class
|
|
44
|
+
return false unless @idx == other.idx
|
|
45
|
+
return false unless @entity_type == other.entity_type
|
|
46
|
+
return false unless @uuid == other.uuid
|
|
47
|
+
return false unless @name == other.name
|
|
48
|
+
return false unless @status == other.status
|
|
49
|
+
return false unless @blockers == other.blockers
|
|
50
|
+
return false unless @payrolls == other.payrolls
|
|
51
|
+
true
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsResults
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsResults
|
|
11
|
+
def idx(); end
|
|
12
|
+
def idx=(str_); end
|
|
13
|
+
def entity_type(); end
|
|
14
|
+
def entity_type=(str_); end
|
|
15
|
+
def uuid(); end
|
|
16
|
+
def uuid=(str_); end
|
|
17
|
+
def name(); end
|
|
18
|
+
def name=(str_); end
|
|
19
|
+
def status(); end
|
|
20
|
+
def status=(str_); end
|
|
21
|
+
def blockers(); end
|
|
22
|
+
def blockers=(str_); end
|
|
23
|
+
def payrolls(); end
|
|
24
|
+
def payrolls=(str_); end
|
|
25
|
+
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 GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# PayrollDigestResultsResultsStatus - The status of this company's digest computation.
|
|
11
|
+
class PayrollDigestResultsResultsStatus < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
SUCCESS = new('success')
|
|
14
|
+
PARTIAL_SUCCESS = new('partial_success')
|
|
15
|
+
FAILED = new('failed')
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsResultsStatus
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GustoEmbedded::Models::Shared::PayrollDigestResultsResultsStatus
|
|
11
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module GustoEmbedded
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# PayrollDigestResultsStatus - The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`.
|
|
11
|
+
class PayrollDigestResultsStatus < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
PENDING = new('pending')
|
|
14
|
+
PROCESSING = new('processing')
|
|
15
|
+
COMPLETED = new('completed')
|
|
16
|
+
FAILED = new('failed')
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|