fern_gusto 0.0.6.pre.alpha6
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 +7 -0
- data/lib/base_gusto.rb +175 -0
- data/lib/core/file_utilities.rb +27 -0
- data/lib/environment.rb +9 -0
- data/lib/fern_gusto/ach_transactions/client.rb +119 -0
- data/lib/fern_gusto/admins/types/admin.rb +82 -0
- data/lib/fern_gusto/companies/attachments/client.rb +335 -0
- data/lib/fern_gusto/companies/attachments/types/attachments_create_request_category.rb +15 -0
- data/lib/fern_gusto/companies/attachments/types/attachments_get_download_url_response.rb +56 -0
- data/lib/fern_gusto/companies/bank_accounts/client.rb +435 -0
- data/lib/fern_gusto/companies/bank_accounts/types/bank_accounts_create_request_account_type.rb +15 -0
- data/lib/fern_gusto/companies/benefits/client.rb +862 -0
- data/lib/fern_gusto/companies/client.rb +1104 -0
- data/lib/fern_gusto/companies/departments/client.rb +587 -0
- data/lib/fern_gusto/companies/departments/types/departments_add_people_request_contractors_item.rb +59 -0
- data/lib/fern_gusto/companies/departments/types/departments_add_people_request_employees_item.rb +59 -0
- data/lib/fern_gusto/companies/departments/types/departments_remove_people_request_contractors_item.rb +59 -0
- data/lib/fern_gusto/companies/departments/types/departments_remove_people_request_employees_item.rb +59 -0
- data/lib/fern_gusto/companies/employees/client.rb +376 -0
- data/lib/fern_gusto/companies/external_payrolls/client.rb +605 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item.rb +98 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_benefits_item.rb +79 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_earnings_item.rb +87 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_earnings_item_earning_type.rb +15 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_taxes_item.rb +69 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_tax_liabilities_request_liability_selections_item.rb +80 -0
- data/lib/fern_gusto/companies/federal_tax_details/client.rb +212 -0
- data/lib/fern_gusto/companies/federal_tax_details/types/federal_tax_details_update_request_tax_payer_type.rb +25 -0
- data/lib/fern_gusto/companies/forms/client.rb +345 -0
- data/lib/fern_gusto/companies/industry_selection/client.rb +207 -0
- data/lib/fern_gusto/companies/locations/client.rb +417 -0
- data/lib/fern_gusto/companies/pay_schedules/client.rb +377 -0
- data/lib/fern_gusto/companies/payment_configs/client.rb +198 -0
- data/lib/fern_gusto/companies/payment_configs/types/payment_configs_update_request_payment_speed.rb +19 -0
- data/lib/fern_gusto/companies/signatories/client.rb +513 -0
- data/lib/fern_gusto/companies/signatories/types/signatories_create_request_home_address.rb +89 -0
- data/lib/fern_gusto/companies/signatories/types/signatories_update_request_home_address.rb +88 -0
- data/lib/fern_gusto/companies/tax_requirements/client.rb +367 -0
- data/lib/fern_gusto/companies/tax_requirements/types/tax_requirements_list_response_item.rb +75 -0
- data/lib/fern_gusto/companies/tax_requirements/types/tax_requirements_update_state_request_requirement_sets_item.rb +88 -0
- data/lib/fern_gusto/companies/tax_requirements/types/tax_requirements_update_state_request_requirement_sets_item_requirements_item.rb +70 -0
- data/lib/fern_gusto/companies/types/companies_accept_terms_response.rb +56 -0
- data/lib/fern_gusto/companies/types/companies_create_request_company.rb +83 -0
- data/lib/fern_gusto/companies/types/companies_create_request_user.rb +81 -0
- data/lib/fern_gusto/companies/types/companies_create_response.rb +82 -0
- data/lib/fern_gusto/companies/types/companies_get_custom_fields_response.rb +59 -0
- data/lib/fern_gusto/companies/types/companies_migrate_to_embedded_payroll_response.rb +68 -0
- data/lib/fern_gusto/companies/types/companies_retrieve_terms_response.rb +56 -0
- data/lib/fern_gusto/companies/types/company.rb +223 -0
- data/lib/fern_gusto/companies/types/company_company_status.rb +21 -0
- data/lib/fern_gusto/companies/types/company_compensations.rb +85 -0
- data/lib/fern_gusto/companies/types/company_compensations_fixed_item.rb +55 -0
- data/lib/fern_gusto/companies/types/company_compensations_hourly_item.rb +65 -0
- data/lib/fern_gusto/companies/types/company_compensations_paid_time_off_item.rb +55 -0
- data/lib/fern_gusto/companies/types/company_entity_type.rb +23 -0
- data/lib/fern_gusto/companies/types/company_funding_type.rb +15 -0
- data/lib/fern_gusto/companies/types/company_onboarding_status.rb +77 -0
- data/lib/fern_gusto/companies/types/company_onboarding_status_onboarding_steps_item.rb +97 -0
- data/lib/fern_gusto/companies/types/company_pay_schedule_type.rb +15 -0
- data/lib/fern_gusto/companies/types/company_primary_payroll_admin.rb +80 -0
- data/lib/fern_gusto/companies/types/company_primary_signatory.rb +100 -0
- data/lib/fern_gusto/companies/types/company_primary_signatory_home_address.rb +93 -0
- data/lib/fern_gusto/companies/types/company_tier.rb +20 -0
- data/lib/fern_gusto/company_attachment/types/company_attachment.rb +81 -0
- data/lib/fern_gusto/company_attachment/types/company_attachment_category.rb +13 -0
- data/lib/fern_gusto/company_bank_accounts/types/company_bank_account.rb +157 -0
- data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_account_type.rb +13 -0
- data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_plaid_status.rb +14 -0
- data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_verification_status.rb +19 -0
- data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_verification_type.rb +17 -0
- data/lib/fern_gusto/company_benefits/types/benefit_summary.rb +104 -0
- data/lib/fern_gusto/company_benefits/types/benefit_summary_employees.rb +113 -0
- data/lib/fern_gusto/company_benefits/types/benefit_summary_employees_payroll_benefits.rb +107 -0
- data/lib/fern_gusto/company_benefits/types/benefit_summary_employees_payroll_benefits_pay_period.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements.rb +156 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_catch_up.rb +86 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_catch_up_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_company_contribution_annual_maximum.rb +88 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_company_contribution_annual_maximum_default_value.rb +68 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_contribution.rb +86 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_contribution_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_amount.rb +87 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_amount_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_salary_multiplier.rb +88 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_salary_multiplier_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_deduct_as_percentage.rb +88 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_deduct_as_percentage_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_employee_deduction.rb +88 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_employee_deduction_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_limit_option.rb +86 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_limit_option_default_value.rb +67 -0
- data/lib/fern_gusto/contractor/types/contractor_onboarding_info.rb +78 -0
- data/lib/fern_gusto/contractor/types/contractor_onboarding_status_onboarding_status.rb +14 -0
- data/lib/fern_gusto/contractor/types/contractor_onboarding_status_onboarding_steps_item.rb +88 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group.rb +145 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group_payment_method.rb +15 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group_status.rb +16 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group_wage_type.rb +13 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group.rb +127 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_minimal.rb +116 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_minimal_status.rb +16 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_minimal_totals.rb +74 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_status.rb +16 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_totals.rb +74 -0
- data/lib/fern_gusto/contractor_payment_method/types/contractor_bank_account.rb +94 -0
- data/lib/fern_gusto/contractor_payment_method/types/contractor_bank_account_account_type.rb +13 -0
- data/lib/fern_gusto/contractor_payment_method/types/contractor_payment_method.rb +96 -0
- data/lib/fern_gusto/contractor_payment_method/types/contractor_payment_method_split_by.rb +15 -0
- data/lib/fern_gusto/contractor_payment_method/types/contractor_payment_method_type.rb +14 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment.rb +146 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_payment_method.rb +15 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_status.rb +13 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary.rb +81 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_by_dates.rb +81 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_by_dates_contractor_payments_item.rb +93 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_by_dates_total.rb +67 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_contractor_payments_item.rb +86 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_total.rb +67 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_wage_type.rb +13 -0
- data/lib/fern_gusto/contractors/client.rb +1025 -0
- data/lib/fern_gusto/contractors/documents/client.rb +269 -0
- data/lib/fern_gusto/contractors/documents/types/documents_sign_request_fields_item.rb +67 -0
- data/lib/fern_gusto/contractors/forms/client.rb +343 -0
- data/lib/fern_gusto/contractors/payment_groups/client.rb +569 -0
- data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_create_request_contractor_payments_item.rb +102 -0
- data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_create_request_contractor_payments_item_payment_method.rb +15 -0
- data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_preview_request_contractor_payments_item.rb +102 -0
- data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_preview_request_contractor_payments_item_payment_method.rb +15 -0
- data/lib/fern_gusto/contractors/payment_method/client.rb +369 -0
- data/lib/fern_gusto/contractors/payment_method/types/payment_method_create_bank_account_request_account_type.rb +14 -0
- data/lib/fern_gusto/contractors/payment_method/types/payment_method_update_request_type.rb +17 -0
- data/lib/fern_gusto/contractors/payments/client.rb +558 -0
- data/lib/fern_gusto/contractors/payments/types/payments_create_request_payment_method.rb +15 -0
- data/lib/fern_gusto/contractors/payments/types/payments_list_response.rb +62 -0
- data/lib/fern_gusto/contractors/types/contractor.rb +227 -0
- data/lib/fern_gusto/contractors/types/contractor_address.rb +94 -0
- data/lib/fern_gusto/contractors/types/contractor_onboarding_status.rb +18 -0
- data/lib/fern_gusto/contractors/types/contractor_type.rb +13 -0
- data/lib/fern_gusto/contractors/types/contractor_wage_type.rb +13 -0
- data/lib/fern_gusto/custom_fields/types/company_custom_field.rb +88 -0
- data/lib/fern_gusto/custom_fields/types/custom_field_type.rb +16 -0
- data/lib/fern_gusto/custom_fields/types/employee_custom_field.rb +104 -0
- data/lib/fern_gusto/documents/types/document.rb +167 -0
- data/lib/fern_gusto/documents/types/document_fields_item.rb +114 -0
- data/lib/fern_gusto/documents/types/document_pages_item.rb +65 -0
- data/lib/fern_gusto/documents/types/document_recipient_type.rb +15 -0
- data/lib/fern_gusto/documents/types/document_signed.rb +137 -0
- data/lib/fern_gusto/documents/types/document_signed_recipient_type.rb +15 -0
- data/lib/fern_gusto/earning_types/types/earning_type.rb +66 -0
- data/lib/fern_gusto/employee_employments/types/unprocessed_termination_pay_period.rb +101 -0
- data/lib/fern_gusto/employee_payment_method/types/employee_bank_account.rb +94 -0
- data/lib/fern_gusto/employee_payment_method/types/employee_bank_account_account_type.rb +13 -0
- data/lib/fern_gusto/employee_payment_method/types/employee_payment_method_info.rb +96 -0
- data/lib/fern_gusto/employee_payment_method/types/employee_payment_method_split_by.rb +15 -0
- data/lib/fern_gusto/employee_payment_method/types/employee_payment_method_type.rb +14 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_federal_tax.rb +144 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_federal_tax_w4data_type.rb +13 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax.rb +90 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_answer.rb +74 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_input_question_format.rb +69 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_input_question_format_options_item.rb +67 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_question.rb +96 -0
- data/lib/fern_gusto/employees/adresses/client.rb +885 -0
- data/lib/fern_gusto/employees/benefits/client.rb +656 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution.rb +93 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution_type.rb +23 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution_value.rb +67 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution_value_item.rb +80 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_create_request_deduction_reduces_taxable_income.rb +18 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution.rb +93 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution_type.rb +23 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution_value.rb +67 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution_value_item.rb +80 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_update_request_deduction_reduces_taxable_income.rb +18 -0
- data/lib/fern_gusto/employees/client.rb +822 -0
- data/lib/fern_gusto/employees/employments/client.rb +799 -0
- data/lib/fern_gusto/employees/employments/types/employments_get_history_response_item.rb +95 -0
- data/lib/fern_gusto/employees/employments/types/employments_get_history_response_item_employment_status.rb +20 -0
- data/lib/fern_gusto/employees/forms/client.rb +433 -0
- data/lib/fern_gusto/employees/forms/types/forms_generate_w2response.rb +132 -0
- data/lib/fern_gusto/employees/garnishments/client.rb +558 -0
- data/lib/fern_gusto/employees/garnishments/types/garnishments_create_request_garnishment_type.rb +20 -0
- data/lib/fern_gusto/employees/jobs_and_compensations/client.rb +938 -0
- data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_create_compensation_request_minimum_wages_item.rb +62 -0
- data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_create_compensation_request_payment_unit.rb +19 -0
- data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_update_compensation_request_minimum_wages_item.rb +62 -0
- data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_update_compensation_request_payment_unit.rb +19 -0
- data/lib/fern_gusto/employees/payment_method/client.rb +484 -0
- data/lib/fern_gusto/employees/payment_method/types/payment_method_create_bank_account_request_account_type.rb +14 -0
- data/lib/fern_gusto/employees/payment_method/types/payment_method_update_bank_account_request_account_type.rb +14 -0
- data/lib/fern_gusto/employees/payment_method/types/payment_method_update_request_split_by.rb +17 -0
- data/lib/fern_gusto/employees/payment_method/types/payment_method_update_request_splits_item.rb +83 -0
- data/lib/fern_gusto/employees/payment_method/types/payment_method_update_request_type.rb +16 -0
- data/lib/fern_gusto/employees/tax_setup/client.rb +422 -0
- data/lib/fern_gusto/employees/tax_setup/types/tax_setup_update_state_taxes_request_states_item.rb +73 -0
- data/lib/fern_gusto/employees/tax_setup/types/tax_setup_update_state_taxes_request_states_item_questions_item.rb +73 -0
- data/lib/fern_gusto/employees/tax_setup/types/tax_setup_update_state_taxes_request_states_item_questions_item_answers_item.rb +77 -0
- data/lib/fern_gusto/employees/types/employee.rb +281 -0
- data/lib/fern_gusto/employees/types/employee_current_employment_status.rb +20 -0
- data/lib/fern_gusto/employees/types/employee_onboarding_info.rb +77 -0
- data/lib/fern_gusto/employees/types/employee_onboarding_status.rb +19 -0
- data/lib/fern_gusto/employees/types/employee_onboarding_status_onboarding_steps_item.rb +88 -0
- data/lib/fern_gusto/employees/types/employee_payment_method.rb +13 -0
- data/lib/fern_gusto/employees/types/employees_get_custom_fields_response.rb +59 -0
- data/lib/fern_gusto/employees/types/employees_get_request_include.rb +12 -0
- data/lib/fern_gusto/events/client.rb +144 -0
- data/lib/fern_gusto/events/types/events_list_request_sort_order.rb +12 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll.rb +158 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_applicable_benefits_item.rb +73 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_applicable_earnings_item.rb +87 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_applicable_taxes_item.rb +85 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_basic.rb +101 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_basic_status.rb +16 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item.rb +93 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item_benefits_item.rb +74 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item_earnings_item.rb +81 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item_taxes_item.rb +67 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_metadata.rb +56 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_status.rb +16 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_tax_suggestions.rb +72 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_tax_suggestions_tax_suggestions.rb +68 -0
- data/lib/fern_gusto/external_payrolls/types/tax_liabilities_selections.rb +86 -0
- data/lib/fern_gusto/external_payrolls/types/tax_liabilities_selections_possible_liabilities.rb +75 -0
- data/lib/fern_gusto/federal_tax_details/types/federal_tax_details.rb +140 -0
- data/lib/fern_gusto/flows/client.rb +113 -0
- data/lib/fern_gusto/flows/types/flow.rb +66 -0
- data/lib/fern_gusto/flows/types/flows_create_request_entity_type.rb +14 -0
- data/lib/fern_gusto/forms/types/form.rb +123 -0
- data/lib/fern_gusto/forms/types/form1099.rb +126 -0
- data/lib/fern_gusto/generated_documents/client.rb +106 -0
- data/lib/fern_gusto/holiday_pay_policies/client.rb +599 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_add_employees_request_employees_item.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays.rb +198 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_christmas_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_columbus_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_independence_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_juneteenth.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_labor_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_memorial_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_mlk_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_new_years_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_presidents_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_thanksgiving.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_veterans_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_remove_employees_request_employees_item.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays.rb +198 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_christmas_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_columbus_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_independence_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_juneteenth.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_labor_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_memorial_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_mlk_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_new_years_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_presidents_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_thanksgiving.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_veterans_day.rb +57 -0
- data/lib/fern_gusto/industry/types/industry.rb +87 -0
- data/lib/fern_gusto/invoices/client.rb +132 -0
- data/lib/fern_gusto/jobs_and_compensations/types/compensation.rb +120 -0
- data/lib/fern_gusto/jobs_and_compensations/types/compensation_payment_unit.rb +17 -0
- data/lib/fern_gusto/jobs_and_compensations/types/job.rb +161 -0
- data/lib/fern_gusto/locations/types/company_address.rb +103 -0
- data/lib/fern_gusto/locations/types/location.rb +171 -0
- data/lib/fern_gusto/notifications/client.rb +120 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule.rb +151 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment.rb +103 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_department.rb +65 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_employee.rb +65 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_employee_change.rb +105 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_pay_period.rb +80 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_preview.rb +71 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_preview_type.rb +15 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_transition_pay_period.rb +68 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_type.rb +15 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_frequency.rb +17 -0
- data/lib/fern_gusto/payment_configs/types/payment_configs.rb +79 -0
- data/lib/fern_gusto/payroll/client.rb +1644 -0
- data/lib/fern_gusto/payroll/earning_types/client.rb +350 -0
- data/lib/fern_gusto/payroll/earning_types/types/earning_types_get_response.rb +74 -0
- data/lib/fern_gusto/payroll/external_payrolls/client.rb +199 -0
- data/lib/fern_gusto/payroll/pay_schedules/client.rb +584 -0
- data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_create_request_frequency.rb +17 -0
- data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_preview_request_frequency.rb +16 -0
- data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_preview_response.rb +72 -0
- data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_preview_response_pay_periods_item.rb +83 -0
- data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_update_request_frequency.rb +17 -0
- data/lib/fern_gusto/payroll/types/payroll_create_request_off_cycle_reason.rb +15 -0
- data/lib/fern_gusto/payroll/types/payroll_create_request_withholding_pay_period.rb +18 -0
- data/lib/fern_gusto/payroll/types/payroll_get_request_include_item.rb +14 -0
- data/lib/fern_gusto/payroll/types/payroll_list_request_include_item.rb +13 -0
- data/lib/fern_gusto/payroll/types/payroll_list_request_payroll_types_item.rb +13 -0
- data/lib/fern_gusto/payroll/types/payroll_list_request_processing_statuses_item.rb +12 -0
- data/lib/fern_gusto/payroll/types/payroll_list_request_sort_order.rb +12 -0
- data/lib/fern_gusto/payroll/types/payroll_skip_payroll_request_payroll_type.rb +15 -0
- data/lib/fern_gusto/payroll/types/payroll_submit_request_submission_blockers_item.rb +67 -0
- data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item.rb +133 -0
- data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_fixed_compensations_item.rb +79 -0
- data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_hourly_compensations_item.rb +79 -0
- data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_paid_time_off_item.rb +85 -0
- data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_payment_method.rb +13 -0
- data/lib/fern_gusto/payrolls/types/employee_pay_stub.rb +94 -0
- data/lib/fern_gusto/payrolls/types/paid_time_off.rb +123 -0
- data/lib/fern_gusto/payrolls/types/paid_time_off_name.rb +14 -0
- data/lib/fern_gusto/payrolls/types/pay_period.rb +86 -0
- data/lib/fern_gusto/payrolls/types/pay_period_payroll.rb +107 -0
- data/lib/fern_gusto/payrolls/types/pay_period_payroll_payroll_type.rb +13 -0
- data/lib/fern_gusto/payrolls/types/payroll.rb +285 -0
- data/lib/fern_gusto/payrolls/types/payroll_minimal.rb +250 -0
- data/lib/fern_gusto/payrolls/types/payroll_prepared.rb +250 -0
- data/lib/fern_gusto/recovery_cases/client.rb +198 -0
- data/lib/fern_gusto/reports/client.rb +306 -0
- data/lib/fern_gusto/reports/types/reports_create_request_columns_item.rb +91 -0
- data/lib/fern_gusto/reports/types/reports_create_request_employment_status.rb +18 -0
- data/lib/fern_gusto/reports/types/reports_create_request_employment_type.rb +16 -0
- data/lib/fern_gusto/reports/types/reports_create_request_file_type.rb +13 -0
- data/lib/fern_gusto/reports/types/reports_create_request_groupings_item.rb +14 -0
- data/lib/fern_gusto/reports/types/reports_create_request_payment_method.rb +13 -0
- data/lib/fern_gusto/signatories/types/signatory.rb +175 -0
- data/lib/fern_gusto/signatories/types/signatory_home_address.rb +93 -0
- data/lib/fern_gusto/signatories/types/signatory_identity_verification_status.rb +28 -0
- data/lib/fern_gusto/terminations/types/termination.rb +109 -0
- data/lib/fern_gusto/time_off_policies/client.rb +863 -0
- data/lib/fern_gusto/time_off_policies/types/time_off_policies_add_employees_request_employees_item.rb +67 -0
- data/lib/fern_gusto/time_off_policies/types/time_off_policies_create_request_accrual_method.rb +19 -0
- data/lib/fern_gusto/time_off_policies/types/time_off_policies_remove_employees_request_employees_item.rb +57 -0
- data/lib/fern_gusto/time_off_policies/types/time_off_policies_update_balance_request_employees_item.rb +67 -0
- data/lib/fern_gusto/time_off_policies/types/time_off_policies_update_request_accrual_method.rb +19 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request.rb +141 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request_approver.rb +66 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request_employee.rb +66 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request_initiator.rb +66 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request_request_type.rb +13 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request_status.rb +14 -0
- data/lib/fern_gusto/token/client.rb +270 -0
- data/lib/fern_gusto/token/types/token_get_info_response.rb +85 -0
- data/lib/fern_gusto/token/types/token_get_info_response_resource.rb +64 -0
- data/lib/fern_gusto/token/types/token_get_info_response_resource_owner.rb +65 -0
- data/lib/fern_gusto/token/types/token_get_info_response_resource_owner_type.rb +13 -0
- data/lib/fern_gusto/token/types/token_get_system_access_token_response.rb +77 -0
- data/lib/fern_gusto/types/accruing_time_off_hour.rb +64 -0
- data/lib/fern_gusto/types/ach_transaction.rb +162 -0
- data/lib/fern_gusto/types/ach_transaction_payment_direction.rb +11 -0
- data/lib/fern_gusto/types/ach_transaction_payment_event_type.rb +11 -0
- data/lib/fern_gusto/types/ach_transaction_payment_status.rb +13 -0
- data/lib/fern_gusto/types/ach_transaction_recipient_type.rb +11 -0
- data/lib/fern_gusto/types/address.rb +111 -0
- data/lib/fern_gusto/types/authentication.rb +96 -0
- data/lib/fern_gusto/types/child_support_data.rb +58 -0
- data/lib/fern_gusto/types/child_support_data_agencies_item.rb +104 -0
- data/lib/fern_gusto/types/child_support_data_agencies_item_fips_codes_item.rb +67 -0
- data/lib/fern_gusto/types/child_support_data_agencies_item_required_attributes_item.rb +70 -0
- data/lib/fern_gusto/types/child_support_data_agencies_item_required_attributes_item_key.rb +14 -0
- data/lib/fern_gusto/types/company_benefit.rb +135 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits.rb +148 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item.rb +115 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution.rb +91 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution_value.rb +61 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution_value_tiers.rb +60 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution_value_tiers_tiers_item.rb +86 -0
- data/lib/fern_gusto/types/contractor_address_info.rb +118 -0
- data/lib/fern_gusto/types/contractor_body.rb +200 -0
- data/lib/fern_gusto/types/contractor_body_type.rb +11 -0
- data/lib/fern_gusto/types/contractor_body_wage_type.rb +11 -0
- data/lib/fern_gusto/types/contractor_payment_receipt.rb +161 -0
- data/lib/fern_gusto/types/contractor_payment_receipt_contractor_payments_item.rb +120 -0
- data/lib/fern_gusto/types/contractor_payment_receipt_licensee.rb +92 -0
- data/lib/fern_gusto/types/contractor_payment_receipt_totals.rb +54 -0
- data/lib/fern_gusto/types/create_report.rb +77 -0
- data/lib/fern_gusto/types/department.rb +103 -0
- data/lib/fern_gusto/types/department_contractors_item.rb +53 -0
- data/lib/fern_gusto/types/department_employees_item.rb +53 -0
- data/lib/fern_gusto/types/document_pdf.rb +63 -0
- data/lib/fern_gusto/types/employee_address.rb +139 -0
- data/lib/fern_gusto/types/employee_benefit.rb +220 -0
- data/lib/fern_gusto/types/employee_benefit_base_object.rb +199 -0
- data/lib/fern_gusto/types/employee_benefit_base_object_contribution.rb +89 -0
- data/lib/fern_gusto/types/employee_benefit_base_object_contribution_value.rb +61 -0
- data/lib/fern_gusto/types/employee_benefit_base_object_contribution_value_tiers.rb +59 -0
- data/lib/fern_gusto/types/employee_benefit_base_object_contribution_value_tiers_tiers_item.rb +85 -0
- data/lib/fern_gusto/types/employee_benefit_base_object_deduction_reduces_taxable_income.rb +14 -0
- data/lib/fern_gusto/types/employee_benefit_for_company_benefit.rb +220 -0
- data/lib/fern_gusto/types/employee_work_address.rb +137 -0
- data/lib/fern_gusto/types/entity_error_object.rb +102 -0
- data/lib/fern_gusto/types/entity_error_object_errors_item.rb +89 -0
- data/lib/fern_gusto/types/event.rb +99 -0
- data/lib/fern_gusto/types/flsa_status_type.rb +23 -0
- data/lib/fern_gusto/types/form_pdf.rb +63 -0
- data/lib/fern_gusto/types/garnishment.rb +172 -0
- data/lib/fern_gusto/types/garnishment_child_support.rb +113 -0
- data/lib/fern_gusto/types/garnishment_child_support_payment_period.rb +14 -0
- data/lib/fern_gusto/types/garnishment_garnishment_type.rb +16 -0
- data/lib/fern_gusto/types/generated_document.rb +70 -0
- data/lib/fern_gusto/types/gross_up_pay.rb +53 -0
- data/lib/fern_gusto/types/historical_employee_body.rb +156 -0
- data/lib/fern_gusto/types/historical_employee_body_employee_state_taxes.rb +80 -0
- data/lib/fern_gusto/types/historical_employee_body_home_address.rb +84 -0
- data/lib/fern_gusto/types/historical_employee_body_job.rb +53 -0
- data/lib/fern_gusto/types/historical_employee_body_termination.rb +53 -0
- data/lib/fern_gusto/types/historical_employee_body_work_address.rb +53 -0
- data/lib/fern_gusto/types/holiday_pay_policy.rb +88 -0
- data/lib/fern_gusto/types/holiday_pay_policy_employees_item.rb +53 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item.rb +179 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_columbus_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_independence_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_juneteenth.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_labor_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_memorial_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_mlk_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_new_years_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_presidents_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_thanksgiving.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_veterans_day.rb +72 -0
- data/lib/fern_gusto/types/invoice_data.rb +58 -0
- data/lib/fern_gusto/types/invoice_data_active_companies_item.rb +91 -0
- data/lib/fern_gusto/types/minimum_wage.rb +96 -0
- data/lib/fern_gusto/types/notification.rb +125 -0
- data/lib/fern_gusto/types/notification_resources_item.rb +85 -0
- data/lib/fern_gusto/types/off_cycle_reason_type.rb +19 -0
- data/lib/fern_gusto/types/paid_holidays.rb +61 -0
- data/lib/fern_gusto/types/paid_holidays_schema.rb +77 -0
- data/lib/fern_gusto/types/pay_schedule_assignment_body.rb +111 -0
- data/lib/fern_gusto/types/pay_schedule_assignment_body_departments_item.rb +65 -0
- data/lib/fern_gusto/types/pay_schedule_assignment_body_employees_item.rb +64 -0
- data/lib/fern_gusto/types/pay_schedule_assignment_body_type.rb +13 -0
- data/lib/fern_gusto/types/payment_method_bank_account.rb +87 -0
- data/lib/fern_gusto/types/payroll_blocker.rb +63 -0
- data/lib/fern_gusto/types/payroll_blockers_error.rb +60 -0
- data/lib/fern_gusto/types/payroll_blockers_error_errors_item.rb +83 -0
- data/lib/fern_gusto/types/payroll_blockers_error_errors_item_metadata.rb +54 -0
- data/lib/fern_gusto/types/payroll_check.rb +84 -0
- data/lib/fern_gusto/types/payroll_company_taxes_type.rb +6 -0
- data/lib/fern_gusto/types/payroll_company_taxes_type_item.rb +70 -0
- data/lib/fern_gusto/types/payroll_credit_blockers_type.rb +6 -0
- data/lib/fern_gusto/types/payroll_credit_blockers_type_item.rb +89 -0
- data/lib/fern_gusto/types/payroll_credit_blockers_type_item_status.rb +13 -0
- data/lib/fern_gusto/types/payroll_credit_blockers_type_item_unblock_options_item.rb +72 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type.rb +6 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item.rb +216 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_benefits_item.rb +79 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_deductions_item.rb +65 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_fixed_compensations_item.rb +74 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_hourly_compensations_item.rb +92 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_paid_time_off_item.rb +76 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_payment_method.rb +11 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_taxes_item.rb +70 -0
- data/lib/fern_gusto/types/payroll_fixed_compensation_types_type.rb +6 -0
- data/lib/fern_gusto/types/payroll_fixed_compensation_types_type_item.rb +54 -0
- data/lib/fern_gusto/types/payroll_pay_period_type.rb +70 -0
- data/lib/fern_gusto/types/payroll_payment_speed_changed_type.rb +86 -0
- data/lib/fern_gusto/types/payroll_payroll_status_meta_type.rb +92 -0
- data/lib/fern_gusto/types/payroll_processing_request.rb +68 -0
- data/lib/fern_gusto/types/payroll_processing_request_status.rb +14 -0
- data/lib/fern_gusto/types/payroll_receipt.rb +177 -0
- data/lib/fern_gusto/types/payroll_receipt_employee_compensations_item.rb +116 -0
- data/lib/fern_gusto/types/payroll_receipt_licensee.rb +92 -0
- data/lib/fern_gusto/types/payroll_receipt_taxes_item.rb +63 -0
- data/lib/fern_gusto/types/payroll_receipt_totals.rb +85 -0
- data/lib/fern_gusto/types/payroll_reversal.rb +91 -0
- data/lib/fern_gusto/types/payroll_submission_blockers_type.rb +6 -0
- data/lib/fern_gusto/types/payroll_submission_blockers_type_item.rb +89 -0
- data/lib/fern_gusto/types/payroll_submission_blockers_type_item_status.rb +11 -0
- data/lib/fern_gusto/types/payroll_submission_blockers_type_item_unblock_options_item.rb +72 -0
- data/lib/fern_gusto/types/payroll_totals_type.rb +199 -0
- data/lib/fern_gusto/types/payroll_withholding_pay_period_type.rb +17 -0
- data/lib/fern_gusto/types/recovery_case.rb +131 -0
- data/lib/fern_gusto/types/recovery_case_status.rb +14 -0
- data/lib/fern_gusto/types/rehire.rb +116 -0
- data/lib/fern_gusto/types/rehire_body.rb +91 -0
- data/lib/fern_gusto/types/rehire_body_employment_status.rb +16 -0
- data/lib/fern_gusto/types/rehire_employment_status.rb +16 -0
- data/lib/fern_gusto/types/report.rb +72 -0
- data/lib/fern_gusto/types/report_template.rb +77 -0
- data/lib/fern_gusto/types/supported_benefit.rb +122 -0
- data/lib/fern_gusto/types/tax_requirement.rb +111 -0
- data/lib/fern_gusto/types/tax_requirement_applicable_if_item.rb +69 -0
- data/lib/fern_gusto/types/tax_requirement_applicable_if_item_value.rb +72 -0
- data/lib/fern_gusto/types/tax_requirement_effective_from.rb +5 -0
- data/lib/fern_gusto/types/tax_requirement_metadata.rb +182 -0
- data/lib/fern_gusto/types/tax_requirement_metadata_options_item.rb +70 -0
- data/lib/fern_gusto/types/tax_requirement_metadata_rate_type.rb +13 -0
- data/lib/fern_gusto/types/tax_requirement_metadata_type.rb +31 -0
- data/lib/fern_gusto/types/tax_requirement_metadata_validation.rb +81 -0
- data/lib/fern_gusto/types/tax_requirement_metadata_validation_type.rb +11 -0
- data/lib/fern_gusto/types/tax_requirement_set.rb +90 -0
- data/lib/fern_gusto/types/tax_requirements_state.rb +75 -0
- data/lib/fern_gusto/types/time_off_activity.rb +107 -0
- data/lib/fern_gusto/types/time_off_activity_time_off_type.rb +11 -0
- data/lib/fern_gusto/types/time_off_policy.rb +183 -0
- data/lib/fern_gusto/types/time_off_policy_employees_item.rb +53 -0
- data/lib/fern_gusto/types/time_off_policy_policy_type.rb +11 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body.rb +59 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body_errors.rb +57 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body_errors_base_item.rb +72 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body_item.rb +65 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body_item_questions_item.rb +69 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body_item_questions_item_answers_item.rb +72 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_object.rb +63 -0
- data/lib/fern_gusto/types/versionable.rb +57 -0
- data/lib/fern_gusto/types/versionable_required.rb +55 -0
- data/lib/fern_gusto/types/wire_in_request.rb +170 -0
- data/lib/fern_gusto/types/wire_in_request_status.rb +14 -0
- data/lib/fern_gusto/webhooks/client.rb +627 -0
- data/lib/fern_gusto/webhooks/types/webhook_subscription.rb +82 -0
- data/lib/fern_gusto/webhooks/types/webhook_subscription_status.rb +14 -0
- data/lib/fern_gusto/webhooks/types/webhook_subscription_subscription_types_item.rb +25 -0
- data/lib/fern_gusto/webhooks/types/webhooks_create_request_subscription_types_item.rb +25 -0
- data/lib/fern_gusto/webhooks/types/webhooks_update_request_subscription_types_item.rb +25 -0
- data/lib/fern_gusto/wire_in_requests/client.rb +273 -0
- data/lib/fern_gusto.rb +310 -0
- data/lib/gemconfig.rb +13 -0
- data/lib/gusto_legacy.rb +19 -0
- data/lib/requests.rb +206 -0
- data/lib/types_export.rb +461 -0
- metadata +671 -0
@@ -0,0 +1,61 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require "json"
|
3
|
+
require_relative "employee_benefit_base_object_contribution_value_tiers"
|
4
|
+
|
5
|
+
module Gusto
|
6
|
+
# For the `amount` and `percentage` contribution types, the value of the
|
7
|
+
# corresponding amount or percentage.
|
8
|
+
# For the `tiered` contribution type, an array of tiers.
|
9
|
+
class EmployeeBenefitBaseObjectContributionValue
|
10
|
+
|
11
|
+
|
12
|
+
# Deserialize a JSON object to an instance of
|
13
|
+
# EmployeeBenefitBaseObjectContributionValue
|
14
|
+
#
|
15
|
+
# @param json_object [String]
|
16
|
+
# @return [Gusto::EmployeeBenefitBaseObjectContributionValue]
|
17
|
+
def self.from_json(json_object:)
|
18
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
19
|
+
begin
|
20
|
+
struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.")
|
21
|
+
unless struct.nil?
|
22
|
+
return struct
|
23
|
+
else
|
24
|
+
return nil
|
25
|
+
end
|
26
|
+
rescue StandardError
|
27
|
+
# noop
|
28
|
+
end
|
29
|
+
begin
|
30
|
+
Gusto::EmployeeBenefitBaseObjectContributionValueTiers.validate_raw(obj: struct)
|
31
|
+
unless struct.nil?
|
32
|
+
return Gusto::EmployeeBenefitBaseObjectContributionValueTiers.from_json(json_object: struct)
|
33
|
+
else
|
34
|
+
return nil
|
35
|
+
end
|
36
|
+
rescue StandardError
|
37
|
+
# noop
|
38
|
+
end
|
39
|
+
return struct
|
40
|
+
end
|
41
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
42
|
+
# hash and check each fields type against the current object's property
|
43
|
+
# definitions.
|
44
|
+
#
|
45
|
+
# @param obj [Object]
|
46
|
+
# @return [Void]
|
47
|
+
def self.validate_raw(obj:)
|
48
|
+
begin
|
49
|
+
return obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
|
50
|
+
rescue StandardError
|
51
|
+
# noop
|
52
|
+
end
|
53
|
+
begin
|
54
|
+
return Gusto::EmployeeBenefitBaseObjectContributionValueTiers.validate_raw(obj: obj)
|
55
|
+
rescue StandardError
|
56
|
+
# noop
|
57
|
+
end
|
58
|
+
raise("Passed value matched no type within the union, validation failed.")
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
@@ -0,0 +1,59 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "employee_benefit_base_object_contribution_value_tiers_tiers_item"
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Gusto
|
7
|
+
class EmployeeBenefitBaseObjectContributionValueTiers
|
8
|
+
# @return [Array<Gusto::EmployeeBenefitBaseObjectContributionValueTiersTiersItem>]
|
9
|
+
attr_reader :tiers
|
10
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
11
|
+
attr_reader :additional_properties
|
12
|
+
# @return [Object]
|
13
|
+
attr_reader :_field_set
|
14
|
+
protected :_field_set
|
15
|
+
|
16
|
+
OMIT = Object.new
|
17
|
+
|
18
|
+
# @param tiers [Array<Gusto::EmployeeBenefitBaseObjectContributionValueTiersTiersItem>]
|
19
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
20
|
+
# @return [Gusto::EmployeeBenefitBaseObjectContributionValueTiers]
|
21
|
+
def initialize(tiers: OMIT, additional_properties: nil)
|
22
|
+
@tiers = tiers if tiers != OMIT
|
23
|
+
@additional_properties = additional_properties
|
24
|
+
@_field_set = { "tiers": tiers }.reject do | _k, v |
|
25
|
+
v == OMIT
|
26
|
+
end
|
27
|
+
end
|
28
|
+
# Deserialize a JSON object to an instance of
|
29
|
+
# EmployeeBenefitBaseObjectContributionValueTiers
|
30
|
+
#
|
31
|
+
# @param json_object [String]
|
32
|
+
# @return [Gusto::EmployeeBenefitBaseObjectContributionValueTiers]
|
33
|
+
def self.from_json(json_object:)
|
34
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
35
|
+
parsed_json = JSON.parse(json_object)
|
36
|
+
tiers = parsed_json["tiers"]&.map do | item |
|
37
|
+
item = item.to_json
|
38
|
+
Gusto::EmployeeBenefitBaseObjectContributionValueTiersTiersItem.from_json(json_object: item)
|
39
|
+
end
|
40
|
+
new(tiers: tiers, additional_properties: struct)
|
41
|
+
end
|
42
|
+
# Serialize an instance of EmployeeBenefitBaseObjectContributionValueTiers to a
|
43
|
+
# JSON object
|
44
|
+
#
|
45
|
+
# @return [String]
|
46
|
+
def to_json
|
47
|
+
@_field_set&.to_json
|
48
|
+
end
|
49
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
50
|
+
# hash and check each fields type against the current object's property
|
51
|
+
# definitions.
|
52
|
+
#
|
53
|
+
# @param obj [Object]
|
54
|
+
# @return [Void]
|
55
|
+
def self.validate_raw(obj:)
|
56
|
+
obj.tiers&.is_a?(Array) != false || raise("Passed value for field obj.tiers is not the expected type, validation failed.")
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
@@ -0,0 +1,85 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require "ostruct"
|
3
|
+
require "json"
|
4
|
+
|
5
|
+
module Gusto
|
6
|
+
# A single tier of a tiered matching scheme.
|
7
|
+
class EmployeeBenefitBaseObjectContributionValueTiersTiersItem
|
8
|
+
# @return [String] The percentage of employee deduction within this tier the company contribution
|
9
|
+
# will match.
|
10
|
+
attr_reader :rate
|
11
|
+
# @return [String] The percentage threshold at which this tier ends (inclusive).
|
12
|
+
# For example, a value of "5" means the company contribution will match employee
|
13
|
+
# deductions from the previous tier's threshold up to and including 5% of payroll.
|
14
|
+
# If this is the first tier, a value of "5" means the company contribution will
|
15
|
+
# match employee deductions from 0% up to and including 5% of payroll.
|
16
|
+
attr_reader :threshold
|
17
|
+
# @return [String] The step up difference between this tier's threshold and the previous tier's
|
18
|
+
# threshold. In the first tier, this is equivalent to threshold.
|
19
|
+
attr_reader :threshold_delta
|
20
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
21
|
+
attr_reader :additional_properties
|
22
|
+
# @return [Object]
|
23
|
+
attr_reader :_field_set
|
24
|
+
protected :_field_set
|
25
|
+
|
26
|
+
OMIT = Object.new
|
27
|
+
|
28
|
+
# @param rate [String] The percentage of employee deduction within this tier the company contribution
|
29
|
+
# will match.
|
30
|
+
# @param threshold [String] The percentage threshold at which this tier ends (inclusive).
|
31
|
+
# For example, a value of "5" means the company contribution will match employee
|
32
|
+
# deductions from the previous tier's threshold up to and including 5% of payroll.
|
33
|
+
# If this is the first tier, a value of "5" means the company contribution will
|
34
|
+
# match employee deductions from 0% up to and including 5% of payroll.
|
35
|
+
# @param threshold_delta [String] The step up difference between this tier's threshold and the previous tier's
|
36
|
+
# threshold. In the first tier, this is equivalent to threshold.
|
37
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
38
|
+
# @return [Gusto::EmployeeBenefitBaseObjectContributionValueTiersTiersItem]
|
39
|
+
def initialize(rate: OMIT, threshold: OMIT, threshold_delta: OMIT, additional_properties: nil)
|
40
|
+
@rate = rate if rate != OMIT
|
41
|
+
@threshold = threshold if threshold != OMIT
|
42
|
+
@threshold_delta = threshold_delta if threshold_delta != OMIT
|
43
|
+
@additional_properties = additional_properties
|
44
|
+
@_field_set = { "rate": rate, "threshold": threshold, "threshold_delta": threshold_delta }.reject do | _k, v |
|
45
|
+
v == OMIT
|
46
|
+
end
|
47
|
+
end
|
48
|
+
# Deserialize a JSON object to an instance of
|
49
|
+
# EmployeeBenefitBaseObjectContributionValueTiersTiersItem
|
50
|
+
#
|
51
|
+
# @param json_object [String]
|
52
|
+
# @return [Gusto::EmployeeBenefitBaseObjectContributionValueTiersTiersItem]
|
53
|
+
def self.from_json(json_object:)
|
54
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
55
|
+
parsed_json = JSON.parse(json_object)
|
56
|
+
rate = parsed_json["rate"]
|
57
|
+
threshold = parsed_json["threshold"]
|
58
|
+
threshold_delta = parsed_json["threshold_delta"]
|
59
|
+
new(
|
60
|
+
rate: rate,
|
61
|
+
threshold: threshold,
|
62
|
+
threshold_delta: threshold_delta,
|
63
|
+
additional_properties: struct
|
64
|
+
)
|
65
|
+
end
|
66
|
+
# Serialize an instance of
|
67
|
+
# EmployeeBenefitBaseObjectContributionValueTiersTiersItem to a JSON object
|
68
|
+
#
|
69
|
+
# @return [String]
|
70
|
+
def to_json
|
71
|
+
@_field_set&.to_json
|
72
|
+
end
|
73
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
74
|
+
# hash and check each fields type against the current object's property
|
75
|
+
# definitions.
|
76
|
+
#
|
77
|
+
# @param obj [Object]
|
78
|
+
# @return [Void]
|
79
|
+
def self.validate_raw(obj:)
|
80
|
+
obj.rate&.is_a?(String) != false || raise("Passed value for field obj.rate is not the expected type, validation failed.")
|
81
|
+
obj.threshold&.is_a?(String) != false || raise("Passed value for field obj.threshold is not the expected type, validation failed.")
|
82
|
+
obj.threshold_delta&.is_a?(String) != false || raise("Passed value for field obj.threshold_delta is not the expected type, validation failed.")
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Gusto
|
4
|
+
# Whether the employee deduction reduces taxable income or not. Only valid for
|
5
|
+
# Group Term Life benefits. Note: when the value is not "unset", coverage amount
|
6
|
+
# and coverage salary multiplier are ignored.
|
7
|
+
class EmployeeBenefitBaseObjectDeductionReducesTaxableIncome
|
8
|
+
|
9
|
+
UNSET = "unset"
|
10
|
+
REDUCES_TAXABLE_INCOME = "reduces_taxable_income"
|
11
|
+
DOES_NOT_REDUCE_TAXABLE_INCOME = "does_not_reduce_taxable_income"
|
12
|
+
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,220 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "employee_benefit_base_object_contribution"
|
3
|
+
require_relative "employee_benefit_base_object_deduction_reduces_taxable_income"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module Gusto
|
8
|
+
# The representation of an employee benefit for a company benefit.
|
9
|
+
class EmployeeBenefitForCompanyBenefit
|
10
|
+
# @return [String] The UUID of the employee to which the benefit belongs.
|
11
|
+
attr_reader :employee_uuid
|
12
|
+
# @return [String] The UUID of the company benefit.
|
13
|
+
attr_reader :company_benefit_uuid
|
14
|
+
# @return [String] The UUID of the employee benefit.
|
15
|
+
attr_reader :uuid
|
16
|
+
# @return [String] The current version of the object. See the [versioning
|
17
|
+
# guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information
|
18
|
+
# on how to use this field.
|
19
|
+
attr_reader :version
|
20
|
+
# @return [Boolean] Whether the employee benefit is active.
|
21
|
+
attr_reader :active
|
22
|
+
# @return [String] The amount to be deducted, per pay period, from the employee's pay.
|
23
|
+
attr_reader :employee_deduction
|
24
|
+
# @return [Boolean] Whether the employee deduction amount should be treated as a percentage to be
|
25
|
+
# deducted from each payroll.
|
26
|
+
attr_reader :deduct_as_percentage
|
27
|
+
# @return [String] The maximum employee deduction amount per year. A null value signifies no limit.
|
28
|
+
attr_reader :employee_deduction_annual_maximum
|
29
|
+
# @return [Gusto::EmployeeBenefitBaseObjectContribution] An object representing the type and value of the company contribution.
|
30
|
+
attr_reader :contribution
|
31
|
+
# @return [Boolean] Whether the company contribution is elective (aka matching). For "tiered"
|
32
|
+
# contribution types, this is always true.
|
33
|
+
attr_reader :elective
|
34
|
+
# @return [String] The maximum company contribution amount per year. A null value signifies no
|
35
|
+
# limit.
|
36
|
+
attr_reader :company_contribution_annual_maximum
|
37
|
+
# @return [String] Some benefits require additional information to determine their limit. For
|
38
|
+
# example, for an HSA benefit, the limit option should be either "Family" or
|
39
|
+
# "Individual". For a Dependent Care FSA benefit, the limit option should be
|
40
|
+
# either "Joint Filing or Single" or "Married and Filing Separately".
|
41
|
+
attr_reader :limit_option
|
42
|
+
# @return [Boolean] Whether the employee should use a benefit’s "catch up" rate. Only Roth 401k and
|
43
|
+
# 401k benefits use this value for employees over 50.
|
44
|
+
attr_reader :catch_up
|
45
|
+
# @return [String] Identifier for a 401(k) loan assigned by the 401(k) provider
|
46
|
+
attr_reader :retirement_loan_identifier
|
47
|
+
# @return [String] The amount that the employee is insured for. Note: company contribution cannot
|
48
|
+
# be present if coverage amount is set.
|
49
|
+
attr_reader :coverage_amount
|
50
|
+
# @return [Gusto::EmployeeBenefitBaseObjectDeductionReducesTaxableIncome] Whether the employee deduction reduces taxable income or not. Only valid for
|
51
|
+
# Group Term Life benefits. Note: when the value is not "unset", coverage amount
|
52
|
+
# and coverage salary multiplier are ignored.
|
53
|
+
attr_reader :deduction_reduces_taxable_income
|
54
|
+
# @return [String] The coverage amount as a multiple of the employee’s salary. Only applicable for
|
55
|
+
# Group Term Life benefits. Note: cannot be set if coverage amount is also set.
|
56
|
+
attr_reader :coverage_salary_multiplier
|
57
|
+
# @return [String] The amount to be paid, per pay period, by the company. This field will not
|
58
|
+
# appear for tiered contribution types.
|
59
|
+
attr_reader :company_contribution
|
60
|
+
# @return [Boolean] Whether the company_contribution value should be treated as a percentage to be
|
61
|
+
# added to each payroll. This field will not appear for tiered contribution types.
|
62
|
+
attr_reader :contribute_as_percentage
|
63
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
64
|
+
attr_reader :additional_properties
|
65
|
+
# @return [Object]
|
66
|
+
attr_reader :_field_set
|
67
|
+
protected :_field_set
|
68
|
+
|
69
|
+
OMIT = Object.new
|
70
|
+
|
71
|
+
# @param employee_uuid [String] The UUID of the employee to which the benefit belongs.
|
72
|
+
# @param company_benefit_uuid [String] The UUID of the company benefit.
|
73
|
+
# @param uuid [String] The UUID of the employee benefit.
|
74
|
+
# @param version [String] The current version of the object. See the [versioning
|
75
|
+
# guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information
|
76
|
+
# on how to use this field.
|
77
|
+
# @param active [Boolean] Whether the employee benefit is active.
|
78
|
+
# @param employee_deduction [String] The amount to be deducted, per pay period, from the employee's pay.
|
79
|
+
# @param deduct_as_percentage [Boolean] Whether the employee deduction amount should be treated as a percentage to be
|
80
|
+
# deducted from each payroll.
|
81
|
+
# @param employee_deduction_annual_maximum [String] The maximum employee deduction amount per year. A null value signifies no limit.
|
82
|
+
# @param contribution [Gusto::EmployeeBenefitBaseObjectContribution] An object representing the type and value of the company contribution.
|
83
|
+
# @param elective [Boolean] Whether the company contribution is elective (aka matching). For "tiered"
|
84
|
+
# contribution types, this is always true.
|
85
|
+
# @param company_contribution_annual_maximum [String] The maximum company contribution amount per year. A null value signifies no
|
86
|
+
# limit.
|
87
|
+
# @param limit_option [String] Some benefits require additional information to determine their limit. For
|
88
|
+
# example, for an HSA benefit, the limit option should be either "Family" or
|
89
|
+
# "Individual". For a Dependent Care FSA benefit, the limit option should be
|
90
|
+
# either "Joint Filing or Single" or "Married and Filing Separately".
|
91
|
+
# @param catch_up [Boolean] Whether the employee should use a benefit’s "catch up" rate. Only Roth 401k and
|
92
|
+
# 401k benefits use this value for employees over 50.
|
93
|
+
# @param retirement_loan_identifier [String] Identifier for a 401(k) loan assigned by the 401(k) provider
|
94
|
+
# @param coverage_amount [String] The amount that the employee is insured for. Note: company contribution cannot
|
95
|
+
# be present if coverage amount is set.
|
96
|
+
# @param deduction_reduces_taxable_income [Gusto::EmployeeBenefitBaseObjectDeductionReducesTaxableIncome] Whether the employee deduction reduces taxable income or not. Only valid for
|
97
|
+
# Group Term Life benefits. Note: when the value is not "unset", coverage amount
|
98
|
+
# and coverage salary multiplier are ignored.
|
99
|
+
# @param coverage_salary_multiplier [String] The coverage amount as a multiple of the employee’s salary. Only applicable for
|
100
|
+
# Group Term Life benefits. Note: cannot be set if coverage amount is also set.
|
101
|
+
# @param company_contribution [String] The amount to be paid, per pay period, by the company. This field will not
|
102
|
+
# appear for tiered contribution types.
|
103
|
+
# @param contribute_as_percentage [Boolean] Whether the company_contribution value should be treated as a percentage to be
|
104
|
+
# added to each payroll. This field will not appear for tiered contribution types.
|
105
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
106
|
+
# @return [Gusto::EmployeeBenefitForCompanyBenefit]
|
107
|
+
def initialize(employee_uuid: OMIT, company_benefit_uuid: OMIT, uuid: OMIT, version: OMIT, active: OMIT, employee_deduction: OMIT, deduct_as_percentage: OMIT, employee_deduction_annual_maximum: OMIT, contribution: OMIT, elective: OMIT, company_contribution_annual_maximum: OMIT, limit_option: OMIT, catch_up: OMIT, retirement_loan_identifier: OMIT, coverage_amount: OMIT, deduction_reduces_taxable_income: OMIT, coverage_salary_multiplier: OMIT, company_contribution: OMIT, contribute_as_percentage: OMIT, additional_properties: nil)
|
108
|
+
@employee_uuid = employee_uuid if employee_uuid != OMIT
|
109
|
+
@company_benefit_uuid = company_benefit_uuid if company_benefit_uuid != OMIT
|
110
|
+
@uuid = uuid if uuid != OMIT
|
111
|
+
@version = version if version != OMIT
|
112
|
+
@active = active if active != OMIT
|
113
|
+
@employee_deduction = employee_deduction if employee_deduction != OMIT
|
114
|
+
@deduct_as_percentage = deduct_as_percentage if deduct_as_percentage != OMIT
|
115
|
+
@employee_deduction_annual_maximum = employee_deduction_annual_maximum if employee_deduction_annual_maximum != OMIT
|
116
|
+
@contribution = contribution if contribution != OMIT
|
117
|
+
@elective = elective if elective != OMIT
|
118
|
+
@company_contribution_annual_maximum = company_contribution_annual_maximum if company_contribution_annual_maximum != OMIT
|
119
|
+
@limit_option = limit_option if limit_option != OMIT
|
120
|
+
@catch_up = catch_up if catch_up != OMIT
|
121
|
+
@retirement_loan_identifier = retirement_loan_identifier if retirement_loan_identifier != OMIT
|
122
|
+
@coverage_amount = coverage_amount if coverage_amount != OMIT
|
123
|
+
@deduction_reduces_taxable_income = deduction_reduces_taxable_income if deduction_reduces_taxable_income != OMIT
|
124
|
+
@coverage_salary_multiplier = coverage_salary_multiplier if coverage_salary_multiplier != OMIT
|
125
|
+
@company_contribution = company_contribution if company_contribution != OMIT
|
126
|
+
@contribute_as_percentage = contribute_as_percentage if contribute_as_percentage != OMIT
|
127
|
+
@additional_properties = additional_properties
|
128
|
+
@_field_set = { "employee_uuid": employee_uuid, "company_benefit_uuid": company_benefit_uuid, "uuid": uuid, "version": version, "active": active, "employee_deduction": employee_deduction, "deduct_as_percentage": deduct_as_percentage, "employee_deduction_annual_maximum": employee_deduction_annual_maximum, "contribution": contribution, "elective": elective, "company_contribution_annual_maximum": company_contribution_annual_maximum, "limit_option": limit_option, "catch_up": catch_up, "retirement_loan_identifier": retirement_loan_identifier, "coverage_amount": coverage_amount, "deduction_reduces_taxable_income": deduction_reduces_taxable_income, "coverage_salary_multiplier": coverage_salary_multiplier, "company_contribution": company_contribution, "contribute_as_percentage": contribute_as_percentage }.reject do | _k, v |
|
129
|
+
v == OMIT
|
130
|
+
end
|
131
|
+
end
|
132
|
+
# Deserialize a JSON object to an instance of EmployeeBenefitForCompanyBenefit
|
133
|
+
#
|
134
|
+
# @param json_object [String]
|
135
|
+
# @return [Gusto::EmployeeBenefitForCompanyBenefit]
|
136
|
+
def self.from_json(json_object:)
|
137
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
138
|
+
parsed_json = JSON.parse(json_object)
|
139
|
+
employee_uuid = parsed_json["employee_uuid"]
|
140
|
+
company_benefit_uuid = parsed_json["company_benefit_uuid"]
|
141
|
+
uuid = parsed_json["uuid"]
|
142
|
+
version = parsed_json["version"]
|
143
|
+
active = parsed_json["active"]
|
144
|
+
employee_deduction = parsed_json["employee_deduction"]
|
145
|
+
deduct_as_percentage = parsed_json["deduct_as_percentage"]
|
146
|
+
employee_deduction_annual_maximum = parsed_json["employee_deduction_annual_maximum"]
|
147
|
+
unless parsed_json["contribution"].nil?
|
148
|
+
contribution = parsed_json["contribution"].to_json
|
149
|
+
contribution = Gusto::EmployeeBenefitBaseObjectContribution.from_json(json_object: contribution)
|
150
|
+
else
|
151
|
+
contribution = nil
|
152
|
+
end
|
153
|
+
elective = parsed_json["elective"]
|
154
|
+
company_contribution_annual_maximum = parsed_json["company_contribution_annual_maximum"]
|
155
|
+
limit_option = parsed_json["limit_option"]
|
156
|
+
catch_up = parsed_json["catch_up"]
|
157
|
+
retirement_loan_identifier = parsed_json["retirement_loan_identifier"]
|
158
|
+
coverage_amount = parsed_json["coverage_amount"]
|
159
|
+
deduction_reduces_taxable_income = parsed_json["deduction_reduces_taxable_income"]
|
160
|
+
coverage_salary_multiplier = parsed_json["coverage_salary_multiplier"]
|
161
|
+
company_contribution = parsed_json["company_contribution"]
|
162
|
+
contribute_as_percentage = parsed_json["contribute_as_percentage"]
|
163
|
+
new(
|
164
|
+
employee_uuid: employee_uuid,
|
165
|
+
company_benefit_uuid: company_benefit_uuid,
|
166
|
+
uuid: uuid,
|
167
|
+
version: version,
|
168
|
+
active: active,
|
169
|
+
employee_deduction: employee_deduction,
|
170
|
+
deduct_as_percentage: deduct_as_percentage,
|
171
|
+
employee_deduction_annual_maximum: employee_deduction_annual_maximum,
|
172
|
+
contribution: contribution,
|
173
|
+
elective: elective,
|
174
|
+
company_contribution_annual_maximum: company_contribution_annual_maximum,
|
175
|
+
limit_option: limit_option,
|
176
|
+
catch_up: catch_up,
|
177
|
+
retirement_loan_identifier: retirement_loan_identifier,
|
178
|
+
coverage_amount: coverage_amount,
|
179
|
+
deduction_reduces_taxable_income: deduction_reduces_taxable_income,
|
180
|
+
coverage_salary_multiplier: coverage_salary_multiplier,
|
181
|
+
company_contribution: company_contribution,
|
182
|
+
contribute_as_percentage: contribute_as_percentage,
|
183
|
+
additional_properties: struct
|
184
|
+
)
|
185
|
+
end
|
186
|
+
# Serialize an instance of EmployeeBenefitForCompanyBenefit to a JSON object
|
187
|
+
#
|
188
|
+
# @return [String]
|
189
|
+
def to_json
|
190
|
+
@_field_set&.to_json
|
191
|
+
end
|
192
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
193
|
+
# hash and check each fields type against the current object's property
|
194
|
+
# definitions.
|
195
|
+
#
|
196
|
+
# @param obj [Object]
|
197
|
+
# @return [Void]
|
198
|
+
def self.validate_raw(obj:)
|
199
|
+
obj.employee_uuid&.is_a?(String) != false || raise("Passed value for field obj.employee_uuid is not the expected type, validation failed.")
|
200
|
+
obj.company_benefit_uuid&.is_a?(String) != false || raise("Passed value for field obj.company_benefit_uuid is not the expected type, validation failed.")
|
201
|
+
obj.uuid&.is_a?(String) != false || raise("Passed value for field obj.uuid is not the expected type, validation failed.")
|
202
|
+
obj.version&.is_a?(String) != false || raise("Passed value for field obj.version is not the expected type, validation failed.")
|
203
|
+
obj.active&.is_a?(Boolean) != false || raise("Passed value for field obj.active is not the expected type, validation failed.")
|
204
|
+
obj.employee_deduction&.is_a?(String) != false || raise("Passed value for field obj.employee_deduction is not the expected type, validation failed.")
|
205
|
+
obj.deduct_as_percentage&.is_a?(Boolean) != false || raise("Passed value for field obj.deduct_as_percentage is not the expected type, validation failed.")
|
206
|
+
obj.employee_deduction_annual_maximum&.is_a?(String) != false || raise("Passed value for field obj.employee_deduction_annual_maximum is not the expected type, validation failed.")
|
207
|
+
obj.contribution.nil? || Gusto::EmployeeBenefitBaseObjectContribution.validate_raw(obj: obj.contribution)
|
208
|
+
obj.elective&.is_a?(Boolean) != false || raise("Passed value for field obj.elective is not the expected type, validation failed.")
|
209
|
+
obj.company_contribution_annual_maximum&.is_a?(String) != false || raise("Passed value for field obj.company_contribution_annual_maximum is not the expected type, validation failed.")
|
210
|
+
obj.limit_option&.is_a?(String) != false || raise("Passed value for field obj.limit_option is not the expected type, validation failed.")
|
211
|
+
obj.catch_up&.is_a?(Boolean) != false || raise("Passed value for field obj.catch_up is not the expected type, validation failed.")
|
212
|
+
obj.retirement_loan_identifier&.is_a?(String) != false || raise("Passed value for field obj.retirement_loan_identifier is not the expected type, validation failed.")
|
213
|
+
obj.coverage_amount&.is_a?(String) != false || raise("Passed value for field obj.coverage_amount is not the expected type, validation failed.")
|
214
|
+
obj.deduction_reduces_taxable_income&.is_a?(Gusto::EmployeeBenefitBaseObjectDeductionReducesTaxableIncome) != false || raise("Passed value for field obj.deduction_reduces_taxable_income is not the expected type, validation failed.")
|
215
|
+
obj.coverage_salary_multiplier&.is_a?(String) != false || raise("Passed value for field obj.coverage_salary_multiplier is not the expected type, validation failed.")
|
216
|
+
obj.company_contribution&.is_a?(String) != false || raise("Passed value for field obj.company_contribution is not the expected type, validation failed.")
|
217
|
+
obj.contribute_as_percentage&.is_a?(Boolean) != false || raise("Passed value for field obj.contribute_as_percentage is not the expected type, validation failed.")
|
218
|
+
end
|
219
|
+
end
|
220
|
+
end
|
@@ -0,0 +1,137 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require "ostruct"
|
3
|
+
require "json"
|
4
|
+
|
5
|
+
module Gusto
|
6
|
+
class EmployeeWorkAddress
|
7
|
+
# @return [String] The unique identifier of this work address.
|
8
|
+
attr_reader :uuid
|
9
|
+
# @return [String] The date the employee began working at this location.
|
10
|
+
attr_reader :effective_date
|
11
|
+
# @return [Boolean] Signifies if this address is the active work address for the current date
|
12
|
+
attr_reader :active
|
13
|
+
# @return [String] UUID reference to the company location for this work address.
|
14
|
+
attr_reader :location_uuid
|
15
|
+
# @return [String] UUID reference to the employee for this work address.
|
16
|
+
attr_reader :employee_uuid
|
17
|
+
# @return [String] The current version of the object. See the [versioning
|
18
|
+
# guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information
|
19
|
+
# on how to use this field.
|
20
|
+
attr_reader :version
|
21
|
+
# @return [String]
|
22
|
+
attr_reader :street1
|
23
|
+
# @return [String]
|
24
|
+
attr_reader :street2
|
25
|
+
# @return [String]
|
26
|
+
attr_reader :city
|
27
|
+
# @return [String]
|
28
|
+
attr_reader :state
|
29
|
+
# @return [String]
|
30
|
+
attr_reader :zip
|
31
|
+
# @return [String]
|
32
|
+
attr_reader :country
|
33
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
34
|
+
attr_reader :additional_properties
|
35
|
+
# @return [Object]
|
36
|
+
attr_reader :_field_set
|
37
|
+
protected :_field_set
|
38
|
+
|
39
|
+
OMIT = Object.new
|
40
|
+
|
41
|
+
# @param uuid [String] The unique identifier of this work address.
|
42
|
+
# @param effective_date [String] The date the employee began working at this location.
|
43
|
+
# @param active [Boolean] Signifies if this address is the active work address for the current date
|
44
|
+
# @param location_uuid [String] UUID reference to the company location for this work address.
|
45
|
+
# @param employee_uuid [String] UUID reference to the employee for this work address.
|
46
|
+
# @param version [String] The current version of the object. See the [versioning
|
47
|
+
# guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information
|
48
|
+
# on how to use this field.
|
49
|
+
# @param street1 [String]
|
50
|
+
# @param street2 [String]
|
51
|
+
# @param city [String]
|
52
|
+
# @param state [String]
|
53
|
+
# @param zip [String]
|
54
|
+
# @param country [String]
|
55
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
56
|
+
# @return [Gusto::EmployeeWorkAddress]
|
57
|
+
def initialize(uuid:, effective_date: OMIT, active: OMIT, location_uuid: OMIT, employee_uuid: OMIT, version: OMIT, street1: OMIT, street2: OMIT, city: OMIT, state: OMIT, zip: OMIT, country: OMIT, additional_properties: nil)
|
58
|
+
@uuid = uuid
|
59
|
+
@effective_date = effective_date if effective_date != OMIT
|
60
|
+
@active = active if active != OMIT
|
61
|
+
@location_uuid = location_uuid if location_uuid != OMIT
|
62
|
+
@employee_uuid = employee_uuid if employee_uuid != OMIT
|
63
|
+
@version = version if version != OMIT
|
64
|
+
@street1 = street1 if street1 != OMIT
|
65
|
+
@street2 = street2 if street2 != OMIT
|
66
|
+
@city = city if city != OMIT
|
67
|
+
@state = state if state != OMIT
|
68
|
+
@zip = zip if zip != OMIT
|
69
|
+
@country = country if country != OMIT
|
70
|
+
@additional_properties = additional_properties
|
71
|
+
@_field_set = { "uuid": uuid, "effective_date": effective_date, "active": active, "location_uuid": location_uuid, "employee_uuid": employee_uuid, "version": version, "street_1": street1, "street_2": street2, "city": city, "state": state, "zip": zip, "country": country }.reject do | _k, v |
|
72
|
+
v == OMIT
|
73
|
+
end
|
74
|
+
end
|
75
|
+
# Deserialize a JSON object to an instance of EmployeeWorkAddress
|
76
|
+
#
|
77
|
+
# @param json_object [String]
|
78
|
+
# @return [Gusto::EmployeeWorkAddress]
|
79
|
+
def self.from_json(json_object:)
|
80
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
81
|
+
parsed_json = JSON.parse(json_object)
|
82
|
+
uuid = parsed_json["uuid"]
|
83
|
+
effective_date = parsed_json["effective_date"]
|
84
|
+
active = parsed_json["active"]
|
85
|
+
location_uuid = parsed_json["location_uuid"]
|
86
|
+
employee_uuid = parsed_json["employee_uuid"]
|
87
|
+
version = parsed_json["version"]
|
88
|
+
street1 = parsed_json["street_1"]
|
89
|
+
street2 = parsed_json["street_2"]
|
90
|
+
city = parsed_json["city"]
|
91
|
+
state = parsed_json["state"]
|
92
|
+
zip = parsed_json["zip"]
|
93
|
+
country = parsed_json["country"]
|
94
|
+
new(
|
95
|
+
uuid: uuid,
|
96
|
+
effective_date: effective_date,
|
97
|
+
active: active,
|
98
|
+
location_uuid: location_uuid,
|
99
|
+
employee_uuid: employee_uuid,
|
100
|
+
version: version,
|
101
|
+
street1: street1,
|
102
|
+
street2: street2,
|
103
|
+
city: city,
|
104
|
+
state: state,
|
105
|
+
zip: zip,
|
106
|
+
country: country,
|
107
|
+
additional_properties: struct
|
108
|
+
)
|
109
|
+
end
|
110
|
+
# Serialize an instance of EmployeeWorkAddress to a JSON object
|
111
|
+
#
|
112
|
+
# @return [String]
|
113
|
+
def to_json
|
114
|
+
@_field_set&.to_json
|
115
|
+
end
|
116
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
117
|
+
# hash and check each fields type against the current object's property
|
118
|
+
# definitions.
|
119
|
+
#
|
120
|
+
# @param obj [Object]
|
121
|
+
# @return [Void]
|
122
|
+
def self.validate_raw(obj:)
|
123
|
+
obj.uuid.is_a?(String) != false || raise("Passed value for field obj.uuid is not the expected type, validation failed.")
|
124
|
+
obj.effective_date&.is_a?(String) != false || raise("Passed value for field obj.effective_date is not the expected type, validation failed.")
|
125
|
+
obj.active&.is_a?(Boolean) != false || raise("Passed value for field obj.active is not the expected type, validation failed.")
|
126
|
+
obj.location_uuid&.is_a?(String) != false || raise("Passed value for field obj.location_uuid is not the expected type, validation failed.")
|
127
|
+
obj.employee_uuid&.is_a?(String) != false || raise("Passed value for field obj.employee_uuid is not the expected type, validation failed.")
|
128
|
+
obj.version&.is_a?(String) != false || raise("Passed value for field obj.version is not the expected type, validation failed.")
|
129
|
+
obj.street1&.is_a?(String) != false || raise("Passed value for field obj.street1 is not the expected type, validation failed.")
|
130
|
+
obj.street2&.is_a?(String) != false || raise("Passed value for field obj.street2 is not the expected type, validation failed.")
|
131
|
+
obj.city&.is_a?(String) != false || raise("Passed value for field obj.city is not the expected type, validation failed.")
|
132
|
+
obj.state&.is_a?(String) != false || raise("Passed value for field obj.state is not the expected type, validation failed.")
|
133
|
+
obj.zip&.is_a?(String) != false || raise("Passed value for field obj.zip is not the expected type, validation failed.")
|
134
|
+
obj.country&.is_a?(String) != false || raise("Passed value for field obj.country is not the expected type, validation failed.")
|
135
|
+
end
|
136
|
+
end
|
137
|
+
end
|