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,558 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "../../../requests"
|
3
|
+
require_relative "../../types/garnishment"
|
4
|
+
require "json"
|
5
|
+
require_relative "types/garnishments_create_request_garnishment_type"
|
6
|
+
require_relative "../../types/garnishment_child_support"
|
7
|
+
require_relative "../../types/child_support_data"
|
8
|
+
require "async"
|
9
|
+
require "async"
|
10
|
+
require "async"
|
11
|
+
require "async"
|
12
|
+
require "async"
|
13
|
+
require_relative "../../../requests"
|
14
|
+
|
15
|
+
module Gusto
|
16
|
+
module Employees
|
17
|
+
class GarnishmentsClient
|
18
|
+
# @return [Gusto::RequestClient]
|
19
|
+
attr_reader :request_client
|
20
|
+
|
21
|
+
|
22
|
+
# @param request_client [Gusto::RequestClient]
|
23
|
+
# @return [Gusto::Employees::GarnishmentsClient]
|
24
|
+
def initialize(request_client:)
|
25
|
+
@request_client = request_client
|
26
|
+
end
|
27
|
+
# Garnishments, or employee deductions, are fixed amounts or percentages deducted
|
28
|
+
# from an employee’s pay. They can be deducted a specific number of times or on a
|
29
|
+
# recurring basis. Garnishments can also have maximum deductions on a yearly or
|
30
|
+
# per-pay-period bases. Common uses for garnishments are court-ordered payments
|
31
|
+
# for child support or back taxes. Some companies provide loans to their employees
|
32
|
+
# that are repaid via garnishments.
|
33
|
+
# scope: `garnishments:read`
|
34
|
+
#
|
35
|
+
# @param employee_id [String] The UUID of the employee
|
36
|
+
# @param page [Float] The page that is requested. When unspecified, will load all objects unless
|
37
|
+
# endpoint forces pagination.
|
38
|
+
# @param per [Float] Number of objects per page. For majority of endpoints will default to 25
|
39
|
+
# @param request_options [Gusto::RequestOptions]
|
40
|
+
# @return [Array<Gusto::Garnishment>]
|
41
|
+
# @example
|
42
|
+
# api = Gusto::Client.new(
|
43
|
+
# base_url: "https://api.example.com",
|
44
|
+
# environment: Gusto::Environment::DEMO,
|
45
|
+
# token: "YOUR_AUTH_TOKEN"
|
46
|
+
# )
|
47
|
+
# api.employees.garnishments.list(employee_id: "employee_id")
|
48
|
+
def list(employee_id:, page: nil, per: nil, request_options: nil)
|
49
|
+
response = @request_client.conn.get do | req |
|
50
|
+
unless request_options&.timeout_in_seconds.nil?
|
51
|
+
req.options.timeout = request_options.timeout_in_seconds
|
52
|
+
end
|
53
|
+
unless request_options&.token.nil?
|
54
|
+
req.headers["Authorization"] = request_options.token
|
55
|
+
end
|
56
|
+
unless request_options&.gusto_api_version.nil?
|
57
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
58
|
+
end
|
59
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
60
|
+
req.params = { **(request_options&.additional_query_parameters || {}), "page": page, "per": per }.compact
|
61
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
62
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
63
|
+
end
|
64
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/employees/#{employee_id}/garnishments"
|
65
|
+
end
|
66
|
+
parsed_json = JSON.parse(response.body)
|
67
|
+
parsed_json&.map do | item |
|
68
|
+
item = item.to_json
|
69
|
+
Gusto::Garnishment.from_json(json_object: item)
|
70
|
+
end
|
71
|
+
end
|
72
|
+
# Garnishments, or employee deductions, are fixed amounts or percentages deducted
|
73
|
+
# from an employee’s pay. They can be deducted a specific number of times or on a
|
74
|
+
# recurring basis. Garnishments can also have maximum deductions on a yearly or
|
75
|
+
# per-pay-period bases. Common uses for garnishments are court-ordered payments
|
76
|
+
# for child support or back taxes. Some companies provide loans to their employees
|
77
|
+
# that are repaid via garnishments.
|
78
|
+
# scope: `garnishments:write`
|
79
|
+
#
|
80
|
+
# @param employee_id [String] The UUID of the employee
|
81
|
+
# @param active [Boolean] Whether or not this garnishment is currently active.
|
82
|
+
# @param amount [String] The amount of the garnishment. Either a percentage or a fixed dollar amount.
|
83
|
+
# Represented as a float, e.g. "8.00".
|
84
|
+
# @param description [String] The description of the garnishment.
|
85
|
+
# @param court_ordered [Boolean] Whether the garnishment is court ordered.
|
86
|
+
# @param garnishment_type [Gusto::Employees::Garnishments::GarnishmentsCreateRequestGarnishmentType] The specific type of garnishment for court ordered garnishments.
|
87
|
+
# @param times [Integer] The number of times to apply the garnishment. Ignored if recurring is true.
|
88
|
+
# @param recurring [Boolean] Whether the garnishment should recur indefinitely.
|
89
|
+
# @param annual_maximum [String] The maximum deduction per annum. A null value indicates no maximum. Represented
|
90
|
+
# as a float, e.g. "200.00".
|
91
|
+
# @param pay_period_maximum [String] The maximum deduction per pay period. A null value indicates no maximum.
|
92
|
+
# Represented as a float, e.g. "16.00".
|
93
|
+
# @param deduct_as_percentage [Boolean] Whether the amount should be treated as a percentage to be deducted per pay
|
94
|
+
# period.
|
95
|
+
# @param total_amount [String] A maximum total deduction for the lifetime of this garnishment. A null value
|
96
|
+
# indicates no maximum.
|
97
|
+
# @param child_support [Hash] Request of type Gusto::GarnishmentChildSupport, as a Hash
|
98
|
+
# * :state (String)
|
99
|
+
# * :payment_period (Gusto::GarnishmentChildSupportPaymentPeriod)
|
100
|
+
# * :fips_code (String)
|
101
|
+
# * :case_number (String)
|
102
|
+
# * :order_number (String)
|
103
|
+
# * :remittance_number (String)
|
104
|
+
# @param request_options [Gusto::RequestOptions]
|
105
|
+
# @return [Gusto::Garnishment]
|
106
|
+
# @example
|
107
|
+
# api = Gusto::Client.new(
|
108
|
+
# base_url: "https://api.example.com",
|
109
|
+
# environment: Gusto::Environment::DEMO,
|
110
|
+
# token: "YOUR_AUTH_TOKEN"
|
111
|
+
# )
|
112
|
+
# api.employees.garnishments.create(
|
113
|
+
# employee_id: "employee_id",
|
114
|
+
# amount: "150.00",
|
115
|
+
# description: "Back taxes",
|
116
|
+
# court_ordered: true,
|
117
|
+
# recurring: true,
|
118
|
+
# deduct_as_percentage: false
|
119
|
+
# )
|
120
|
+
def create(employee_id:, active: nil, amount:, description: nil, court_ordered:, garnishment_type: nil, times: nil, recurring: nil, annual_maximum: nil, pay_period_maximum: nil, deduct_as_percentage: nil, total_amount: nil, child_support: nil, request_options: nil)
|
121
|
+
response = @request_client.conn.post do | req |
|
122
|
+
unless request_options&.timeout_in_seconds.nil?
|
123
|
+
req.options.timeout = request_options.timeout_in_seconds
|
124
|
+
end
|
125
|
+
unless request_options&.token.nil?
|
126
|
+
req.headers["Authorization"] = request_options.token
|
127
|
+
end
|
128
|
+
unless request_options&.gusto_api_version.nil?
|
129
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
130
|
+
end
|
131
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
132
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
133
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
134
|
+
end
|
135
|
+
req.body = { **(request_options&.additional_body_parameters || {}), active: active, amount: amount, description: description, court_ordered: court_ordered, garnishment_type: garnishment_type, times: times, recurring: recurring, annual_maximum: annual_maximum, pay_period_maximum: pay_period_maximum, deduct_as_percentage: deduct_as_percentage, total_amount: total_amount, child_support: child_support }.compact
|
136
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/employees/#{employee_id}/garnishments"
|
137
|
+
end
|
138
|
+
Gusto::Garnishment.from_json(json_object: response.body)
|
139
|
+
end
|
140
|
+
# Garnishments, or employee deductions, are fixed amounts or percentages deducted
|
141
|
+
# from an employee’s pay. They can be deducted a specific number of times or on a
|
142
|
+
# recurring basis. Garnishments can also have maximum deductions on a yearly or
|
143
|
+
# per-pay-period bases. Common uses for garnishments are court-ordered payments
|
144
|
+
# for child support or back taxes. Some companies provide loans to their employees
|
145
|
+
# that are repaid via garnishments.
|
146
|
+
# scope: `garnishments:read`
|
147
|
+
#
|
148
|
+
# @param garnishment_id [String] The UUID of the garnishment
|
149
|
+
# @param request_options [Gusto::RequestOptions]
|
150
|
+
# @return [Gusto::Garnishment]
|
151
|
+
# @example
|
152
|
+
# api = Gusto::Client.new(
|
153
|
+
# base_url: "https://api.example.com",
|
154
|
+
# environment: Gusto::Environment::DEMO,
|
155
|
+
# token: "YOUR_AUTH_TOKEN"
|
156
|
+
# )
|
157
|
+
# api.employees.garnishments.get(garnishment_id: "garnishment_id")
|
158
|
+
def get(garnishment_id:, request_options: nil)
|
159
|
+
response = @request_client.conn.get do | req |
|
160
|
+
unless request_options&.timeout_in_seconds.nil?
|
161
|
+
req.options.timeout = request_options.timeout_in_seconds
|
162
|
+
end
|
163
|
+
unless request_options&.token.nil?
|
164
|
+
req.headers["Authorization"] = request_options.token
|
165
|
+
end
|
166
|
+
unless request_options&.gusto_api_version.nil?
|
167
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
168
|
+
end
|
169
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
170
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
171
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
172
|
+
end
|
173
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
174
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
175
|
+
end
|
176
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/garnishments/#{garnishment_id}"
|
177
|
+
end
|
178
|
+
Gusto::Garnishment.from_json(json_object: response.body)
|
179
|
+
end
|
180
|
+
# Garnishments, or employee deductions, are fixed amounts or percentages deducted
|
181
|
+
# from an employee’s pay. They can be deducted a specific number of times or on a
|
182
|
+
# recurring basis. Garnishments can also have maximum deductions on a yearly or
|
183
|
+
# per-pay-period bases. Common uses for garnishments are court-ordered payments
|
184
|
+
# for child support or back taxes. Some companies provide loans to their employees
|
185
|
+
# that are repaid via garnishments.
|
186
|
+
# scope: `garnishments:write`
|
187
|
+
#
|
188
|
+
# @param garnishment_id [String] The UUID of the garnishment
|
189
|
+
# @param active [Boolean] Whether or not this garnishment is currently active.
|
190
|
+
# @param amount [String] The amount of the garnishment. Either a percentage or a fixed dollar amount.
|
191
|
+
# Represented as a float, e.g. "8.00".
|
192
|
+
# @param description [String] The description of the garnishment.
|
193
|
+
# @param court_ordered [Boolean] Whether the garnishment is court ordered.
|
194
|
+
# @param times [Integer] The number of times to apply the garnishment. Ignored if recurring is true.
|
195
|
+
# @param recurring [Boolean] Whether the garnishment should recur indefinitely.
|
196
|
+
# @param annual_maximum [String] The maximum deduction per annum. A null value indicates no maximum. Represented
|
197
|
+
# as a float, e.g. "200.00".
|
198
|
+
# @param pay_period_maximum [String] The maximum deduction per pay period. A null value indicates no maximum.
|
199
|
+
# Represented as a float, e.g. "16.00".
|
200
|
+
# @param deduct_as_percentage [Boolean] Whether the amount should be treated as a percentage to be deducted per pay
|
201
|
+
# period.
|
202
|
+
# @param total_amount [String] A maximum total deduction for the lifetime of this garnishment. A null value
|
203
|
+
# indicates no maximum.
|
204
|
+
# @param child_support [Hash] Request of type Gusto::GarnishmentChildSupport, as a Hash
|
205
|
+
# * :state (String)
|
206
|
+
# * :payment_period (Gusto::GarnishmentChildSupportPaymentPeriod)
|
207
|
+
# * :fips_code (String)
|
208
|
+
# * :case_number (String)
|
209
|
+
# * :order_number (String)
|
210
|
+
# * :remittance_number (String)
|
211
|
+
# @param version [String] The current version of the object. See the [versioning
|
212
|
+
# guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for
|
213
|
+
# information on how to use this field.
|
214
|
+
# @param request_options [Gusto::RequestOptions]
|
215
|
+
# @return [Gusto::Garnishment]
|
216
|
+
# @example
|
217
|
+
# api = Gusto::Client.new(
|
218
|
+
# base_url: "https://api.example.com",
|
219
|
+
# environment: Gusto::Environment::DEMO,
|
220
|
+
# token: "YOUR_AUTH_TOKEN"
|
221
|
+
# )
|
222
|
+
# api.employees.garnishments.update(
|
223
|
+
# garnishment_id: "garnishment_id",
|
224
|
+
# active: false,
|
225
|
+
# version: "52b7c567242cb7452e89ba2bc02cb476"
|
226
|
+
# )
|
227
|
+
def update(garnishment_id:, active: nil, amount: nil, description: nil, court_ordered: nil, times: nil, recurring: nil, annual_maximum: nil, pay_period_maximum: nil, deduct_as_percentage: nil, total_amount: nil, child_support: nil, version:, request_options: nil)
|
228
|
+
response = @request_client.conn.put do | req |
|
229
|
+
unless request_options&.timeout_in_seconds.nil?
|
230
|
+
req.options.timeout = request_options.timeout_in_seconds
|
231
|
+
end
|
232
|
+
unless request_options&.token.nil?
|
233
|
+
req.headers["Authorization"] = request_options.token
|
234
|
+
end
|
235
|
+
unless request_options&.gusto_api_version.nil?
|
236
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
237
|
+
end
|
238
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
239
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
240
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
241
|
+
end
|
242
|
+
req.body = { **(request_options&.additional_body_parameters || {}), active: active, amount: amount, description: description, court_ordered: court_ordered, times: times, recurring: recurring, annual_maximum: annual_maximum, pay_period_maximum: pay_period_maximum, deduct_as_percentage: deduct_as_percentage, total_amount: total_amount, child_support: child_support, version: version }.compact
|
243
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/garnishments/#{garnishment_id}"
|
244
|
+
end
|
245
|
+
Gusto::Garnishment.from_json(json_object: response.body)
|
246
|
+
end
|
247
|
+
# Agency data and requirements to be used for creating child support garnishments
|
248
|
+
# scope: `garnishments:read`
|
249
|
+
#
|
250
|
+
# @param request_options [Gusto::RequestOptions]
|
251
|
+
# @return [Gusto::ChildSupportData]
|
252
|
+
# @example
|
253
|
+
# api = Gusto::Client.new(
|
254
|
+
# base_url: "https://api.example.com",
|
255
|
+
# environment: Gusto::Environment::DEMO,
|
256
|
+
# token: "YOUR_AUTH_TOKEN"
|
257
|
+
# )
|
258
|
+
# api.employees.garnishments.list_child_support
|
259
|
+
def list_child_support(request_options: nil)
|
260
|
+
response = @request_client.conn.get do | req |
|
261
|
+
unless request_options&.timeout_in_seconds.nil?
|
262
|
+
req.options.timeout = request_options.timeout_in_seconds
|
263
|
+
end
|
264
|
+
unless request_options&.token.nil?
|
265
|
+
req.headers["Authorization"] = request_options.token
|
266
|
+
end
|
267
|
+
unless request_options&.gusto_api_version.nil?
|
268
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
269
|
+
end
|
270
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
271
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
272
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
273
|
+
end
|
274
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
275
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
276
|
+
end
|
277
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/garnishments/child_support"
|
278
|
+
end
|
279
|
+
Gusto::ChildSupportData.from_json(json_object: response.body)
|
280
|
+
end
|
281
|
+
end
|
282
|
+
class AsyncGarnishmentsClient
|
283
|
+
# @return [Gusto::AsyncRequestClient]
|
284
|
+
attr_reader :request_client
|
285
|
+
|
286
|
+
|
287
|
+
# @param request_client [Gusto::RequestClient]
|
288
|
+
# @return [Gusto::Employees::AsyncGarnishmentsClient]
|
289
|
+
def initialize(request_client:)
|
290
|
+
@request_client = request_client
|
291
|
+
end
|
292
|
+
# Garnishments, or employee deductions, are fixed amounts or percentages deducted
|
293
|
+
# from an employee’s pay. They can be deducted a specific number of times or on a
|
294
|
+
# recurring basis. Garnishments can also have maximum deductions on a yearly or
|
295
|
+
# per-pay-period bases. Common uses for garnishments are court-ordered payments
|
296
|
+
# for child support or back taxes. Some companies provide loans to their employees
|
297
|
+
# that are repaid via garnishments.
|
298
|
+
# scope: `garnishments:read`
|
299
|
+
#
|
300
|
+
# @param employee_id [String] The UUID of the employee
|
301
|
+
# @param page [Float] The page that is requested. When unspecified, will load all objects unless
|
302
|
+
# endpoint forces pagination.
|
303
|
+
# @param per [Float] Number of objects per page. For majority of endpoints will default to 25
|
304
|
+
# @param request_options [Gusto::RequestOptions]
|
305
|
+
# @return [Array<Gusto::Garnishment>]
|
306
|
+
# @example
|
307
|
+
# api = Gusto::Client.new(
|
308
|
+
# base_url: "https://api.example.com",
|
309
|
+
# environment: Gusto::Environment::DEMO,
|
310
|
+
# token: "YOUR_AUTH_TOKEN"
|
311
|
+
# )
|
312
|
+
# api.employees.garnishments.list(employee_id: "employee_id")
|
313
|
+
def list(employee_id:, page: nil, per: nil, request_options: nil)
|
314
|
+
Async do
|
315
|
+
response = @request_client.conn.get do | req |
|
316
|
+
unless request_options&.timeout_in_seconds.nil?
|
317
|
+
req.options.timeout = request_options.timeout_in_seconds
|
318
|
+
end
|
319
|
+
unless request_options&.token.nil?
|
320
|
+
req.headers["Authorization"] = request_options.token
|
321
|
+
end
|
322
|
+
unless request_options&.gusto_api_version.nil?
|
323
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
324
|
+
end
|
325
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
326
|
+
req.params = { **(request_options&.additional_query_parameters || {}), "page": page, "per": per }.compact
|
327
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
328
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
329
|
+
end
|
330
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/employees/#{employee_id}/garnishments"
|
331
|
+
end
|
332
|
+
parsed_json = JSON.parse(response.body)
|
333
|
+
parsed_json&.map do | item |
|
334
|
+
item = item.to_json
|
335
|
+
Gusto::Garnishment.from_json(json_object: item)
|
336
|
+
end
|
337
|
+
end
|
338
|
+
end
|
339
|
+
# Garnishments, or employee deductions, are fixed amounts or percentages deducted
|
340
|
+
# from an employee’s pay. They can be deducted a specific number of times or on a
|
341
|
+
# recurring basis. Garnishments can also have maximum deductions on a yearly or
|
342
|
+
# per-pay-period bases. Common uses for garnishments are court-ordered payments
|
343
|
+
# for child support or back taxes. Some companies provide loans to their employees
|
344
|
+
# that are repaid via garnishments.
|
345
|
+
# scope: `garnishments:write`
|
346
|
+
#
|
347
|
+
# @param employee_id [String] The UUID of the employee
|
348
|
+
# @param active [Boolean] Whether or not this garnishment is currently active.
|
349
|
+
# @param amount [String] The amount of the garnishment. Either a percentage or a fixed dollar amount.
|
350
|
+
# Represented as a float, e.g. "8.00".
|
351
|
+
# @param description [String] The description of the garnishment.
|
352
|
+
# @param court_ordered [Boolean] Whether the garnishment is court ordered.
|
353
|
+
# @param garnishment_type [Gusto::Employees::Garnishments::GarnishmentsCreateRequestGarnishmentType] The specific type of garnishment for court ordered garnishments.
|
354
|
+
# @param times [Integer] The number of times to apply the garnishment. Ignored if recurring is true.
|
355
|
+
# @param recurring [Boolean] Whether the garnishment should recur indefinitely.
|
356
|
+
# @param annual_maximum [String] The maximum deduction per annum. A null value indicates no maximum. Represented
|
357
|
+
# as a float, e.g. "200.00".
|
358
|
+
# @param pay_period_maximum [String] The maximum deduction per pay period. A null value indicates no maximum.
|
359
|
+
# Represented as a float, e.g. "16.00".
|
360
|
+
# @param deduct_as_percentage [Boolean] Whether the amount should be treated as a percentage to be deducted per pay
|
361
|
+
# period.
|
362
|
+
# @param total_amount [String] A maximum total deduction for the lifetime of this garnishment. A null value
|
363
|
+
# indicates no maximum.
|
364
|
+
# @param child_support [Hash] Request of type Gusto::GarnishmentChildSupport, as a Hash
|
365
|
+
# * :state (String)
|
366
|
+
# * :payment_period (Gusto::GarnishmentChildSupportPaymentPeriod)
|
367
|
+
# * :fips_code (String)
|
368
|
+
# * :case_number (String)
|
369
|
+
# * :order_number (String)
|
370
|
+
# * :remittance_number (String)
|
371
|
+
# @param request_options [Gusto::RequestOptions]
|
372
|
+
# @return [Gusto::Garnishment]
|
373
|
+
# @example
|
374
|
+
# api = Gusto::Client.new(
|
375
|
+
# base_url: "https://api.example.com",
|
376
|
+
# environment: Gusto::Environment::DEMO,
|
377
|
+
# token: "YOUR_AUTH_TOKEN"
|
378
|
+
# )
|
379
|
+
# api.employees.garnishments.create(
|
380
|
+
# employee_id: "employee_id",
|
381
|
+
# amount: "150.00",
|
382
|
+
# description: "Back taxes",
|
383
|
+
# court_ordered: true,
|
384
|
+
# recurring: true,
|
385
|
+
# deduct_as_percentage: false
|
386
|
+
# )
|
387
|
+
def create(employee_id:, active: nil, amount:, description: nil, court_ordered:, garnishment_type: nil, times: nil, recurring: nil, annual_maximum: nil, pay_period_maximum: nil, deduct_as_percentage: nil, total_amount: nil, child_support: nil, request_options: nil)
|
388
|
+
Async do
|
389
|
+
response = @request_client.conn.post do | req |
|
390
|
+
unless request_options&.timeout_in_seconds.nil?
|
391
|
+
req.options.timeout = request_options.timeout_in_seconds
|
392
|
+
end
|
393
|
+
unless request_options&.token.nil?
|
394
|
+
req.headers["Authorization"] = request_options.token
|
395
|
+
end
|
396
|
+
unless request_options&.gusto_api_version.nil?
|
397
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
398
|
+
end
|
399
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
400
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
401
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
402
|
+
end
|
403
|
+
req.body = { **(request_options&.additional_body_parameters || {}), active: active, amount: amount, description: description, court_ordered: court_ordered, garnishment_type: garnishment_type, times: times, recurring: recurring, annual_maximum: annual_maximum, pay_period_maximum: pay_period_maximum, deduct_as_percentage: deduct_as_percentage, total_amount: total_amount, child_support: child_support }.compact
|
404
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/employees/#{employee_id}/garnishments"
|
405
|
+
end
|
406
|
+
Gusto::Garnishment.from_json(json_object: response.body)
|
407
|
+
end
|
408
|
+
end
|
409
|
+
# Garnishments, or employee deductions, are fixed amounts or percentages deducted
|
410
|
+
# from an employee’s pay. They can be deducted a specific number of times or on a
|
411
|
+
# recurring basis. Garnishments can also have maximum deductions on a yearly or
|
412
|
+
# per-pay-period bases. Common uses for garnishments are court-ordered payments
|
413
|
+
# for child support or back taxes. Some companies provide loans to their employees
|
414
|
+
# that are repaid via garnishments.
|
415
|
+
# scope: `garnishments:read`
|
416
|
+
#
|
417
|
+
# @param garnishment_id [String] The UUID of the garnishment
|
418
|
+
# @param request_options [Gusto::RequestOptions]
|
419
|
+
# @return [Gusto::Garnishment]
|
420
|
+
# @example
|
421
|
+
# api = Gusto::Client.new(
|
422
|
+
# base_url: "https://api.example.com",
|
423
|
+
# environment: Gusto::Environment::DEMO,
|
424
|
+
# token: "YOUR_AUTH_TOKEN"
|
425
|
+
# )
|
426
|
+
# api.employees.garnishments.get(garnishment_id: "garnishment_id")
|
427
|
+
def get(garnishment_id:, request_options: nil)
|
428
|
+
Async do
|
429
|
+
response = @request_client.conn.get do | req |
|
430
|
+
unless request_options&.timeout_in_seconds.nil?
|
431
|
+
req.options.timeout = request_options.timeout_in_seconds
|
432
|
+
end
|
433
|
+
unless request_options&.token.nil?
|
434
|
+
req.headers["Authorization"] = request_options.token
|
435
|
+
end
|
436
|
+
unless request_options&.gusto_api_version.nil?
|
437
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
438
|
+
end
|
439
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
440
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
441
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
442
|
+
end
|
443
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
444
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
445
|
+
end
|
446
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/garnishments/#{garnishment_id}"
|
447
|
+
end
|
448
|
+
Gusto::Garnishment.from_json(json_object: response.body)
|
449
|
+
end
|
450
|
+
end
|
451
|
+
# Garnishments, or employee deductions, are fixed amounts or percentages deducted
|
452
|
+
# from an employee’s pay. They can be deducted a specific number of times or on a
|
453
|
+
# recurring basis. Garnishments can also have maximum deductions on a yearly or
|
454
|
+
# per-pay-period bases. Common uses for garnishments are court-ordered payments
|
455
|
+
# for child support or back taxes. Some companies provide loans to their employees
|
456
|
+
# that are repaid via garnishments.
|
457
|
+
# scope: `garnishments:write`
|
458
|
+
#
|
459
|
+
# @param garnishment_id [String] The UUID of the garnishment
|
460
|
+
# @param active [Boolean] Whether or not this garnishment is currently active.
|
461
|
+
# @param amount [String] The amount of the garnishment. Either a percentage or a fixed dollar amount.
|
462
|
+
# Represented as a float, e.g. "8.00".
|
463
|
+
# @param description [String] The description of the garnishment.
|
464
|
+
# @param court_ordered [Boolean] Whether the garnishment is court ordered.
|
465
|
+
# @param times [Integer] The number of times to apply the garnishment. Ignored if recurring is true.
|
466
|
+
# @param recurring [Boolean] Whether the garnishment should recur indefinitely.
|
467
|
+
# @param annual_maximum [String] The maximum deduction per annum. A null value indicates no maximum. Represented
|
468
|
+
# as a float, e.g. "200.00".
|
469
|
+
# @param pay_period_maximum [String] The maximum deduction per pay period. A null value indicates no maximum.
|
470
|
+
# Represented as a float, e.g. "16.00".
|
471
|
+
# @param deduct_as_percentage [Boolean] Whether the amount should be treated as a percentage to be deducted per pay
|
472
|
+
# period.
|
473
|
+
# @param total_amount [String] A maximum total deduction for the lifetime of this garnishment. A null value
|
474
|
+
# indicates no maximum.
|
475
|
+
# @param child_support [Hash] Request of type Gusto::GarnishmentChildSupport, as a Hash
|
476
|
+
# * :state (String)
|
477
|
+
# * :payment_period (Gusto::GarnishmentChildSupportPaymentPeriod)
|
478
|
+
# * :fips_code (String)
|
479
|
+
# * :case_number (String)
|
480
|
+
# * :order_number (String)
|
481
|
+
# * :remittance_number (String)
|
482
|
+
# @param version [String] The current version of the object. See the [versioning
|
483
|
+
# guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for
|
484
|
+
# information on how to use this field.
|
485
|
+
# @param request_options [Gusto::RequestOptions]
|
486
|
+
# @return [Gusto::Garnishment]
|
487
|
+
# @example
|
488
|
+
# api = Gusto::Client.new(
|
489
|
+
# base_url: "https://api.example.com",
|
490
|
+
# environment: Gusto::Environment::DEMO,
|
491
|
+
# token: "YOUR_AUTH_TOKEN"
|
492
|
+
# )
|
493
|
+
# api.employees.garnishments.update(
|
494
|
+
# garnishment_id: "garnishment_id",
|
495
|
+
# active: false,
|
496
|
+
# version: "52b7c567242cb7452e89ba2bc02cb476"
|
497
|
+
# )
|
498
|
+
def update(garnishment_id:, active: nil, amount: nil, description: nil, court_ordered: nil, times: nil, recurring: nil, annual_maximum: nil, pay_period_maximum: nil, deduct_as_percentage: nil, total_amount: nil, child_support: nil, version:, request_options: nil)
|
499
|
+
Async do
|
500
|
+
response = @request_client.conn.put do | req |
|
501
|
+
unless request_options&.timeout_in_seconds.nil?
|
502
|
+
req.options.timeout = request_options.timeout_in_seconds
|
503
|
+
end
|
504
|
+
unless request_options&.token.nil?
|
505
|
+
req.headers["Authorization"] = request_options.token
|
506
|
+
end
|
507
|
+
unless request_options&.gusto_api_version.nil?
|
508
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
509
|
+
end
|
510
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
511
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
512
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
513
|
+
end
|
514
|
+
req.body = { **(request_options&.additional_body_parameters || {}), active: active, amount: amount, description: description, court_ordered: court_ordered, times: times, recurring: recurring, annual_maximum: annual_maximum, pay_period_maximum: pay_period_maximum, deduct_as_percentage: deduct_as_percentage, total_amount: total_amount, child_support: child_support, version: version }.compact
|
515
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/garnishments/#{garnishment_id}"
|
516
|
+
end
|
517
|
+
Gusto::Garnishment.from_json(json_object: response.body)
|
518
|
+
end
|
519
|
+
end
|
520
|
+
# Agency data and requirements to be used for creating child support garnishments
|
521
|
+
# scope: `garnishments:read`
|
522
|
+
#
|
523
|
+
# @param request_options [Gusto::RequestOptions]
|
524
|
+
# @return [Gusto::ChildSupportData]
|
525
|
+
# @example
|
526
|
+
# api = Gusto::Client.new(
|
527
|
+
# base_url: "https://api.example.com",
|
528
|
+
# environment: Gusto::Environment::DEMO,
|
529
|
+
# token: "YOUR_AUTH_TOKEN"
|
530
|
+
# )
|
531
|
+
# api.employees.garnishments.list_child_support
|
532
|
+
def list_child_support(request_options: nil)
|
533
|
+
Async do
|
534
|
+
response = @request_client.conn.get do | req |
|
535
|
+
unless request_options&.timeout_in_seconds.nil?
|
536
|
+
req.options.timeout = request_options.timeout_in_seconds
|
537
|
+
end
|
538
|
+
unless request_options&.token.nil?
|
539
|
+
req.headers["Authorization"] = request_options.token
|
540
|
+
end
|
541
|
+
unless request_options&.gusto_api_version.nil?
|
542
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
543
|
+
end
|
544
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
545
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
546
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
547
|
+
end
|
548
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
549
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
550
|
+
end
|
551
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/garnishments/child_support"
|
552
|
+
end
|
553
|
+
Gusto::ChildSupportData.from_json(json_object: response.body)
|
554
|
+
end
|
555
|
+
end
|
556
|
+
end
|
557
|
+
end
|
558
|
+
end
|
data/lib/fern_gusto/employees/garnishments/types/garnishments_create_request_garnishment_type.rb
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Gusto
|
4
|
+
module Employees
|
5
|
+
module Garnishments
|
6
|
+
# The specific type of garnishment for court ordered garnishments.
|
7
|
+
class GarnishmentsCreateRequestGarnishmentType
|
8
|
+
|
9
|
+
CHILD_SUPPORT = "child_support"
|
10
|
+
FEDERAL_TAX_LIEN = "federal_tax_lien"
|
11
|
+
STATE_TAX_LIEN = "state_tax_lien"
|
12
|
+
STUDENT_LOAN = "student_loan"
|
13
|
+
CREDITOR_GARNISHMENT = "creditor_garnishment"
|
14
|
+
FEDERAL_LOAN = "federal_loan"
|
15
|
+
OTHER_GARNISHMENT = "other_garnishment"
|
16
|
+
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|