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,98 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "external_payrolls_update_request_external_payroll_items_item_earnings_item"
|
3
|
+
require_relative "external_payrolls_update_request_external_payroll_items_item_benefits_item"
|
4
|
+
require_relative "external_payrolls_update_request_external_payroll_items_item_taxes_item"
|
5
|
+
require "ostruct"
|
6
|
+
require "json"
|
7
|
+
|
8
|
+
module Gusto
|
9
|
+
module Companies
|
10
|
+
module ExternalPayrolls
|
11
|
+
# Submit wages, benefits, taxes for each employee
|
12
|
+
class ExternalPayrollsUpdateRequestExternalPayrollItemsItem
|
13
|
+
# @return [String] The UUID of the employee.
|
14
|
+
attr_reader :employee_uuid
|
15
|
+
# @return [Array<Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItem>]
|
16
|
+
attr_reader :earnings
|
17
|
+
# @return [Array<Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemBenefitsItem>]
|
18
|
+
attr_reader :benefits
|
19
|
+
# @return [Array<Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemTaxesItem>] An array of taxes for the employee. Depends on your company selections, taxes
|
20
|
+
# include federal income tax, social security, medicare, and more.
|
21
|
+
attr_reader :taxes
|
22
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
23
|
+
attr_reader :additional_properties
|
24
|
+
# @return [Object]
|
25
|
+
attr_reader :_field_set
|
26
|
+
protected :_field_set
|
27
|
+
|
28
|
+
OMIT = Object.new
|
29
|
+
|
30
|
+
# @param employee_uuid [String] The UUID of the employee.
|
31
|
+
# @param earnings [Array<Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItem>]
|
32
|
+
# @param benefits [Array<Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemBenefitsItem>]
|
33
|
+
# @param taxes [Array<Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemTaxesItem>] An array of taxes for the employee. Depends on your company selections, taxes
|
34
|
+
# include federal income tax, social security, medicare, and more.
|
35
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
36
|
+
# @return [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItem]
|
37
|
+
def initialize(employee_uuid: OMIT, earnings: OMIT, benefits: OMIT, taxes: OMIT, additional_properties: nil)
|
38
|
+
@employee_uuid = employee_uuid if employee_uuid != OMIT
|
39
|
+
@earnings = earnings if earnings != OMIT
|
40
|
+
@benefits = benefits if benefits != OMIT
|
41
|
+
@taxes = taxes if taxes != OMIT
|
42
|
+
@additional_properties = additional_properties
|
43
|
+
@_field_set = { "employee_uuid": employee_uuid, "earnings": earnings, "benefits": benefits, "taxes": taxes }.reject do | _k, v |
|
44
|
+
v == OMIT
|
45
|
+
end
|
46
|
+
end
|
47
|
+
# Deserialize a JSON object to an instance of
|
48
|
+
# ExternalPayrollsUpdateRequestExternalPayrollItemsItem
|
49
|
+
#
|
50
|
+
# @param json_object [String]
|
51
|
+
# @return [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItem]
|
52
|
+
def self.from_json(json_object:)
|
53
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
54
|
+
parsed_json = JSON.parse(json_object)
|
55
|
+
employee_uuid = parsed_json["employee_uuid"]
|
56
|
+
earnings = parsed_json["earnings"]&.map do | item |
|
57
|
+
item = item.to_json
|
58
|
+
Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItem.from_json(json_object: item)
|
59
|
+
end
|
60
|
+
benefits = parsed_json["benefits"]&.map do | item |
|
61
|
+
item = item.to_json
|
62
|
+
Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemBenefitsItem.from_json(json_object: item)
|
63
|
+
end
|
64
|
+
taxes = parsed_json["taxes"]&.map do | item |
|
65
|
+
item = item.to_json
|
66
|
+
Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemTaxesItem.from_json(json_object: item)
|
67
|
+
end
|
68
|
+
new(
|
69
|
+
employee_uuid: employee_uuid,
|
70
|
+
earnings: earnings,
|
71
|
+
benefits: benefits,
|
72
|
+
taxes: taxes,
|
73
|
+
additional_properties: struct
|
74
|
+
)
|
75
|
+
end
|
76
|
+
# Serialize an instance of ExternalPayrollsUpdateRequestExternalPayrollItemsItem
|
77
|
+
# to a JSON object
|
78
|
+
#
|
79
|
+
# @return [String]
|
80
|
+
def to_json
|
81
|
+
@_field_set&.to_json
|
82
|
+
end
|
83
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
84
|
+
# hash and check each fields type against the current object's property
|
85
|
+
# definitions.
|
86
|
+
#
|
87
|
+
# @param obj [Object]
|
88
|
+
# @return [Void]
|
89
|
+
def self.validate_raw(obj:)
|
90
|
+
obj.employee_uuid&.is_a?(String) != false || raise("Passed value for field obj.employee_uuid is not the expected type, validation failed.")
|
91
|
+
obj.earnings&.is_a?(Array) != false || raise("Passed value for field obj.earnings is not the expected type, validation failed.")
|
92
|
+
obj.benefits&.is_a?(Array) != false || raise("Passed value for field obj.benefits is not the expected type, validation failed.")
|
93
|
+
obj.taxes&.is_a?(Array) != false || raise("Passed value for field obj.taxes is not the expected type, validation failed.")
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
@@ -0,0 +1,79 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require "ostruct"
|
3
|
+
require "json"
|
4
|
+
|
5
|
+
module Gusto
|
6
|
+
module Companies
|
7
|
+
module ExternalPayrolls
|
8
|
+
# An array of benefits for the employee. Depends on your company selections,
|
9
|
+
# benefits include 401k, health insurance and more.
|
10
|
+
class ExternalPayrollsUpdateRequestExternalPayrollItemsItemBenefitsItem
|
11
|
+
# @return [String] Company contribution amount towards the benefit
|
12
|
+
attr_reader :company_contribution_amount
|
13
|
+
# @return [String] Employee deduction amount towards the benefit
|
14
|
+
attr_reader :employee_deduction_amount
|
15
|
+
# @return [Integer] The ID of the benefit.
|
16
|
+
attr_reader :benefit_id
|
17
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
18
|
+
attr_reader :additional_properties
|
19
|
+
# @return [Object]
|
20
|
+
attr_reader :_field_set
|
21
|
+
protected :_field_set
|
22
|
+
|
23
|
+
OMIT = Object.new
|
24
|
+
|
25
|
+
# @param company_contribution_amount [String] Company contribution amount towards the benefit
|
26
|
+
# @param employee_deduction_amount [String] Employee deduction amount towards the benefit
|
27
|
+
# @param benefit_id [Integer] The ID of the benefit.
|
28
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
29
|
+
# @return [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemBenefitsItem]
|
30
|
+
def initialize(company_contribution_amount: OMIT, employee_deduction_amount: OMIT, benefit_id: OMIT, additional_properties: nil)
|
31
|
+
@company_contribution_amount = company_contribution_amount if company_contribution_amount != OMIT
|
32
|
+
@employee_deduction_amount = employee_deduction_amount if employee_deduction_amount != OMIT
|
33
|
+
@benefit_id = benefit_id if benefit_id != OMIT
|
34
|
+
@additional_properties = additional_properties
|
35
|
+
@_field_set = { "company_contribution_amount": company_contribution_amount, "employee_deduction_amount": employee_deduction_amount, "benefit_id": benefit_id }.reject do | _k, v |
|
36
|
+
v == OMIT
|
37
|
+
end
|
38
|
+
end
|
39
|
+
# Deserialize a JSON object to an instance of
|
40
|
+
# ExternalPayrollsUpdateRequestExternalPayrollItemsItemBenefitsItem
|
41
|
+
#
|
42
|
+
# @param json_object [String]
|
43
|
+
# @return [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemBenefitsItem]
|
44
|
+
def self.from_json(json_object:)
|
45
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
46
|
+
parsed_json = JSON.parse(json_object)
|
47
|
+
company_contribution_amount = parsed_json["company_contribution_amount"]
|
48
|
+
employee_deduction_amount = parsed_json["employee_deduction_amount"]
|
49
|
+
benefit_id = parsed_json["benefit_id"]
|
50
|
+
new(
|
51
|
+
company_contribution_amount: company_contribution_amount,
|
52
|
+
employee_deduction_amount: employee_deduction_amount,
|
53
|
+
benefit_id: benefit_id,
|
54
|
+
additional_properties: struct
|
55
|
+
)
|
56
|
+
end
|
57
|
+
# Serialize an instance of
|
58
|
+
# ExternalPayrollsUpdateRequestExternalPayrollItemsItemBenefitsItem to a JSON
|
59
|
+
# object
|
60
|
+
#
|
61
|
+
# @return [String]
|
62
|
+
def to_json
|
63
|
+
@_field_set&.to_json
|
64
|
+
end
|
65
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
66
|
+
# hash and check each fields type against the current object's property
|
67
|
+
# definitions.
|
68
|
+
#
|
69
|
+
# @param obj [Object]
|
70
|
+
# @return [Void]
|
71
|
+
def self.validate_raw(obj:)
|
72
|
+
obj.company_contribution_amount&.is_a?(String) != false || raise("Passed value for field obj.company_contribution_amount is not the expected type, validation failed.")
|
73
|
+
obj.employee_deduction_amount&.is_a?(String) != false || raise("Passed value for field obj.employee_deduction_amount is not the expected type, validation failed.")
|
74
|
+
obj.benefit_id&.is_a?(Integer) != false || raise("Passed value for field obj.benefit_id is not the expected type, validation failed.")
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
@@ -0,0 +1,87 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "external_payrolls_update_request_external_payroll_items_item_earnings_item_earning_type"
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Gusto
|
7
|
+
module Companies
|
8
|
+
module ExternalPayrolls
|
9
|
+
# An array of earnings for the employee. Depends on your company selections,
|
10
|
+
# earnings includes wages, hours, bonuses, tips, commission and more.
|
11
|
+
class ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItem
|
12
|
+
# @return [String] The hour of the compensation for the pay period.
|
13
|
+
attr_reader :hours
|
14
|
+
# @return [String] The amount of the earning.
|
15
|
+
attr_reader :amount
|
16
|
+
# @return [Integer] The ID of the earning.
|
17
|
+
attr_reader :earning_id
|
18
|
+
# @return [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItemEarningType] The earning type for the compensation.
|
19
|
+
attr_reader :earning_type
|
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 hours [String] The hour of the compensation for the pay period.
|
29
|
+
# @param amount [String] The amount of the earning.
|
30
|
+
# @param earning_id [Integer] The ID of the earning.
|
31
|
+
# @param earning_type [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItemEarningType] The earning type for the compensation.
|
32
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
33
|
+
# @return [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItem]
|
34
|
+
def initialize(hours: OMIT, amount: OMIT, earning_id: OMIT, earning_type: OMIT, additional_properties: nil)
|
35
|
+
@hours = hours if hours != OMIT
|
36
|
+
@amount = amount if amount != OMIT
|
37
|
+
@earning_id = earning_id if earning_id != OMIT
|
38
|
+
@earning_type = earning_type if earning_type != OMIT
|
39
|
+
@additional_properties = additional_properties
|
40
|
+
@_field_set = { "hours": hours, "amount": amount, "earning_id": earning_id, "earning_type": earning_type }.reject do | _k, v |
|
41
|
+
v == OMIT
|
42
|
+
end
|
43
|
+
end
|
44
|
+
# Deserialize a JSON object to an instance of
|
45
|
+
# ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItem
|
46
|
+
#
|
47
|
+
# @param json_object [String]
|
48
|
+
# @return [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItem]
|
49
|
+
def self.from_json(json_object:)
|
50
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
51
|
+
parsed_json = JSON.parse(json_object)
|
52
|
+
hours = parsed_json["hours"]
|
53
|
+
amount = parsed_json["amount"]
|
54
|
+
earning_id = parsed_json["earning_id"]
|
55
|
+
earning_type = parsed_json["earning_type"]
|
56
|
+
new(
|
57
|
+
hours: hours,
|
58
|
+
amount: amount,
|
59
|
+
earning_id: earning_id,
|
60
|
+
earning_type: earning_type,
|
61
|
+
additional_properties: struct
|
62
|
+
)
|
63
|
+
end
|
64
|
+
# Serialize an instance of
|
65
|
+
# ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItem to a JSON
|
66
|
+
# object
|
67
|
+
#
|
68
|
+
# @return [String]
|
69
|
+
def to_json
|
70
|
+
@_field_set&.to_json
|
71
|
+
end
|
72
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
73
|
+
# hash and check each fields type against the current object's property
|
74
|
+
# definitions.
|
75
|
+
#
|
76
|
+
# @param obj [Object]
|
77
|
+
# @return [Void]
|
78
|
+
def self.validate_raw(obj:)
|
79
|
+
obj.hours&.is_a?(String) != false || raise("Passed value for field obj.hours is not the expected type, validation failed.")
|
80
|
+
obj.amount&.is_a?(String) != false || raise("Passed value for field obj.amount is not the expected type, validation failed.")
|
81
|
+
obj.earning_id&.is_a?(Integer) != false || raise("Passed value for field obj.earning_id is not the expected type, validation failed.")
|
82
|
+
obj.earning_type&.is_a?(Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItemEarningType) != false || raise("Passed value for field obj.earning_type is not the expected type, validation failed.")
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Gusto
|
4
|
+
module Companies
|
5
|
+
module ExternalPayrolls
|
6
|
+
# The earning type for the compensation.
|
7
|
+
class ExternalPayrollsUpdateRequestExternalPayrollItemsItemEarningsItemEarningType
|
8
|
+
|
9
|
+
COMPANY_PAY_TYPE = "CompanyPayType"
|
10
|
+
COMPANY_EARNING_TYPE = "CompanyEarningType"
|
11
|
+
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,69 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require "ostruct"
|
3
|
+
require "json"
|
4
|
+
|
5
|
+
module Gusto
|
6
|
+
module Companies
|
7
|
+
module ExternalPayrolls
|
8
|
+
class ExternalPayrollsUpdateRequestExternalPayrollItemsItemTaxesItem
|
9
|
+
# @return [String] The amount of the tax.
|
10
|
+
attr_reader :amount
|
11
|
+
# @return [Integer] The ID of the tax.
|
12
|
+
attr_reader :tax_id
|
13
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
14
|
+
attr_reader :additional_properties
|
15
|
+
# @return [Object]
|
16
|
+
attr_reader :_field_set
|
17
|
+
protected :_field_set
|
18
|
+
|
19
|
+
OMIT = Object.new
|
20
|
+
|
21
|
+
# @param amount [String] The amount of the tax.
|
22
|
+
# @param tax_id [Integer] The ID of the tax.
|
23
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
24
|
+
# @return [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemTaxesItem]
|
25
|
+
def initialize(amount: OMIT, tax_id: OMIT, additional_properties: nil)
|
26
|
+
@amount = amount if amount != OMIT
|
27
|
+
@tax_id = tax_id if tax_id != OMIT
|
28
|
+
@additional_properties = additional_properties
|
29
|
+
@_field_set = { "amount": amount, "tax_id": tax_id }.reject do | _k, v |
|
30
|
+
v == OMIT
|
31
|
+
end
|
32
|
+
end
|
33
|
+
# Deserialize a JSON object to an instance of
|
34
|
+
# ExternalPayrollsUpdateRequestExternalPayrollItemsItemTaxesItem
|
35
|
+
#
|
36
|
+
# @param json_object [String]
|
37
|
+
# @return [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateRequestExternalPayrollItemsItemTaxesItem]
|
38
|
+
def self.from_json(json_object:)
|
39
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
40
|
+
parsed_json = JSON.parse(json_object)
|
41
|
+
amount = parsed_json["amount"]
|
42
|
+
tax_id = parsed_json["tax_id"]
|
43
|
+
new(
|
44
|
+
amount: amount,
|
45
|
+
tax_id: tax_id,
|
46
|
+
additional_properties: struct
|
47
|
+
)
|
48
|
+
end
|
49
|
+
# Serialize an instance of
|
50
|
+
# ExternalPayrollsUpdateRequestExternalPayrollItemsItemTaxesItem to a JSON object
|
51
|
+
#
|
52
|
+
# @return [String]
|
53
|
+
def to_json
|
54
|
+
@_field_set&.to_json
|
55
|
+
end
|
56
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
57
|
+
# hash and check each fields type against the current object's property
|
58
|
+
# definitions.
|
59
|
+
#
|
60
|
+
# @param obj [Object]
|
61
|
+
# @return [Void]
|
62
|
+
def self.validate_raw(obj:)
|
63
|
+
obj.amount&.is_a?(String) != false || raise("Passed value for field obj.amount is not the expected type, validation failed.")
|
64
|
+
obj.tax_id&.is_a?(Integer) != false || raise("Passed value for field obj.tax_id is not the expected type, validation failed.")
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
@@ -0,0 +1,80 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require "ostruct"
|
3
|
+
require "json"
|
4
|
+
|
5
|
+
module Gusto
|
6
|
+
module Companies
|
7
|
+
module ExternalPayrolls
|
8
|
+
|
9
|
+
class ExternalPayrollsUpdateTaxLiabilitiesRequestLiabilitySelectionsItem
|
10
|
+
# @return [Integer] The ID of the tax.
|
11
|
+
attr_reader :tax_id
|
12
|
+
# @return [String] The UUID of the last unpaid external payroll uuid. It should be null when the
|
13
|
+
# full amount of tax liability has been paid.
|
14
|
+
attr_reader :last_unpaid_external_payroll_uuid
|
15
|
+
# @return [Float] A selection of unpaid liability amount.
|
16
|
+
attr_reader :unpaid_liability_amount
|
17
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
18
|
+
attr_reader :additional_properties
|
19
|
+
# @return [Object]
|
20
|
+
attr_reader :_field_set
|
21
|
+
protected :_field_set
|
22
|
+
|
23
|
+
OMIT = Object.new
|
24
|
+
|
25
|
+
# @param tax_id [Integer] The ID of the tax.
|
26
|
+
# @param last_unpaid_external_payroll_uuid [String] The UUID of the last unpaid external payroll uuid. It should be null when the
|
27
|
+
# full amount of tax liability has been paid.
|
28
|
+
# @param unpaid_liability_amount [Float] A selection of unpaid liability amount.
|
29
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
30
|
+
# @return [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateTaxLiabilitiesRequestLiabilitySelectionsItem]
|
31
|
+
def initialize(tax_id: OMIT, last_unpaid_external_payroll_uuid: OMIT, unpaid_liability_amount: OMIT, additional_properties: nil)
|
32
|
+
@tax_id = tax_id if tax_id != OMIT
|
33
|
+
@last_unpaid_external_payroll_uuid = last_unpaid_external_payroll_uuid if last_unpaid_external_payroll_uuid != OMIT
|
34
|
+
@unpaid_liability_amount = unpaid_liability_amount if unpaid_liability_amount != OMIT
|
35
|
+
@additional_properties = additional_properties
|
36
|
+
@_field_set = { "tax_id": tax_id, "last_unpaid_external_payroll_uuid": last_unpaid_external_payroll_uuid, "unpaid_liability_amount": unpaid_liability_amount }.reject do | _k, v |
|
37
|
+
v == OMIT
|
38
|
+
end
|
39
|
+
end
|
40
|
+
# Deserialize a JSON object to an instance of
|
41
|
+
# ExternalPayrollsUpdateTaxLiabilitiesRequestLiabilitySelectionsItem
|
42
|
+
#
|
43
|
+
# @param json_object [String]
|
44
|
+
# @return [Gusto::Companies::ExternalPayrolls::ExternalPayrollsUpdateTaxLiabilitiesRequestLiabilitySelectionsItem]
|
45
|
+
def self.from_json(json_object:)
|
46
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
47
|
+
parsed_json = JSON.parse(json_object)
|
48
|
+
tax_id = parsed_json["tax_id"]
|
49
|
+
last_unpaid_external_payroll_uuid = parsed_json["last_unpaid_external_payroll_uuid"]
|
50
|
+
unpaid_liability_amount = parsed_json["unpaid_liability_amount"]
|
51
|
+
new(
|
52
|
+
tax_id: tax_id,
|
53
|
+
last_unpaid_external_payroll_uuid: last_unpaid_external_payroll_uuid,
|
54
|
+
unpaid_liability_amount: unpaid_liability_amount,
|
55
|
+
additional_properties: struct
|
56
|
+
)
|
57
|
+
end
|
58
|
+
# Serialize an instance of
|
59
|
+
# ExternalPayrollsUpdateTaxLiabilitiesRequestLiabilitySelectionsItem to a JSON
|
60
|
+
# object
|
61
|
+
#
|
62
|
+
# @return [String]
|
63
|
+
def to_json
|
64
|
+
@_field_set&.to_json
|
65
|
+
end
|
66
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
67
|
+
# hash and check each fields type against the current object's property
|
68
|
+
# definitions.
|
69
|
+
#
|
70
|
+
# @param obj [Object]
|
71
|
+
# @return [Void]
|
72
|
+
def self.validate_raw(obj:)
|
73
|
+
obj.tax_id&.is_a?(Integer) != false || raise("Passed value for field obj.tax_id is not the expected type, validation failed.")
|
74
|
+
obj.last_unpaid_external_payroll_uuid&.is_a?(String) != false || raise("Passed value for field obj.last_unpaid_external_payroll_uuid is not the expected type, validation failed.")
|
75
|
+
obj.unpaid_liability_amount&.is_a?(Float) != false || raise("Passed value for field obj.unpaid_liability_amount is not the expected type, validation failed.")
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
@@ -0,0 +1,212 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "../../../requests"
|
3
|
+
require_relative "../../federal_tax_details/types/federal_tax_details"
|
4
|
+
require_relative "types/federal_tax_details_update_request_tax_payer_type"
|
5
|
+
require "async"
|
6
|
+
require "async"
|
7
|
+
require_relative "../../../requests"
|
8
|
+
|
9
|
+
module Gusto
|
10
|
+
module Companies
|
11
|
+
class FederalTaxDetailsClient
|
12
|
+
# @return [Gusto::RequestClient]
|
13
|
+
attr_reader :request_client
|
14
|
+
|
15
|
+
|
16
|
+
# @param request_client [Gusto::RequestClient]
|
17
|
+
# @return [Gusto::Companies::FederalTaxDetailsClient]
|
18
|
+
def initialize(request_client:)
|
19
|
+
@request_client = request_client
|
20
|
+
end
|
21
|
+
# Fetches attributes relevant for a company's federal taxes.
|
22
|
+
# scope: `company_federal_taxes:read`
|
23
|
+
#
|
24
|
+
# @param company_id [String] The UUID of the company
|
25
|
+
# @param request_options [Gusto::RequestOptions]
|
26
|
+
# @return [Gusto::FederalTaxDetails::FederalTaxDetails]
|
27
|
+
# @example
|
28
|
+
# api = Gusto::Client.new(
|
29
|
+
# base_url: "https://api.example.com",
|
30
|
+
# environment: Gusto::Environment::DEMO,
|
31
|
+
# token: "YOUR_AUTH_TOKEN"
|
32
|
+
# )
|
33
|
+
# api.companies.federal_tax_details.get(company_id: "company_id")
|
34
|
+
def get(company_id:, request_options: nil)
|
35
|
+
response = @request_client.conn.get do | req |
|
36
|
+
unless request_options&.timeout_in_seconds.nil?
|
37
|
+
req.options.timeout = request_options.timeout_in_seconds
|
38
|
+
end
|
39
|
+
unless request_options&.token.nil?
|
40
|
+
req.headers["Authorization"] = request_options.token
|
41
|
+
end
|
42
|
+
unless request_options&.gusto_api_version.nil?
|
43
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
44
|
+
end
|
45
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
46
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
47
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
48
|
+
end
|
49
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
50
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
51
|
+
end
|
52
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/companies/#{company_id}/federal_tax_details"
|
53
|
+
end
|
54
|
+
Gusto::FederalTaxDetails::FederalTaxDetails.from_json(json_object: response.body)
|
55
|
+
end
|
56
|
+
# Updates attributes relevant for a company's federal taxes.
|
57
|
+
# This information is required is to onboard a company for use with Gusto Embedded
|
58
|
+
# Payroll.
|
59
|
+
# scope: `company_federal_taxes:write`
|
60
|
+
#
|
61
|
+
# @param company_id [String] The UUID of the company
|
62
|
+
# @param legal_name [String] The legal name of the company
|
63
|
+
# @param ein [String] The EIN of of the company
|
64
|
+
# @param tax_payer_type [Gusto::Companies::FederalTaxDetails::FederalTaxDetailsUpdateRequestTaxPayerType] What type of tax entity the company is
|
65
|
+
# @param filing_form [String] The form used by the company for federal tax filing. One of:
|
66
|
+
# - 941 (Quarterly federal tax return)
|
67
|
+
# - 944 (Annual federal tax return)
|
68
|
+
# @param taxable_as_scorp [Boolean] Whether this company should be taxed as an S-Corporation
|
69
|
+
# @param version [String] The current version of the object. See the [versioning
|
70
|
+
# guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for
|
71
|
+
# information on how to use this field.
|
72
|
+
# @param request_options [Gusto::RequestOptions]
|
73
|
+
# @return [Gusto::FederalTaxDetails::FederalTaxDetails]
|
74
|
+
# @example
|
75
|
+
# api = Gusto::Client.new(
|
76
|
+
# base_url: "https://api.example.com",
|
77
|
+
# environment: Gusto::Environment::DEMO,
|
78
|
+
# token: "YOUR_AUTH_TOKEN"
|
79
|
+
# )
|
80
|
+
# api.companies.federal_tax_details.update(
|
81
|
+
# company_id: "company_id",
|
82
|
+
# legal_name: "Acme Corp.",
|
83
|
+
# tax_payer_type: LLP,
|
84
|
+
# filing_form: "944",
|
85
|
+
# taxable_as_scorp: false,
|
86
|
+
# version: "6cb95e00540706ca48d4577b3c839fbe"
|
87
|
+
# )
|
88
|
+
def update(company_id:, legal_name: nil, ein: nil, tax_payer_type: nil, filing_form: nil, taxable_as_scorp: nil, version:, request_options: nil)
|
89
|
+
response = @request_client.conn.put do | req |
|
90
|
+
unless request_options&.timeout_in_seconds.nil?
|
91
|
+
req.options.timeout = request_options.timeout_in_seconds
|
92
|
+
end
|
93
|
+
unless request_options&.token.nil?
|
94
|
+
req.headers["Authorization"] = request_options.token
|
95
|
+
end
|
96
|
+
unless request_options&.gusto_api_version.nil?
|
97
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
98
|
+
end
|
99
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
100
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
101
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
102
|
+
end
|
103
|
+
req.body = { **(request_options&.additional_body_parameters || {}), legal_name: legal_name, ein: ein, tax_payer_type: tax_payer_type, filing_form: filing_form, taxable_as_scorp: taxable_as_scorp, version: version }.compact
|
104
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/companies/#{company_id}/federal_tax_details"
|
105
|
+
end
|
106
|
+
Gusto::FederalTaxDetails::FederalTaxDetails.from_json(json_object: response.body)
|
107
|
+
end
|
108
|
+
end
|
109
|
+
class AsyncFederalTaxDetailsClient
|
110
|
+
# @return [Gusto::AsyncRequestClient]
|
111
|
+
attr_reader :request_client
|
112
|
+
|
113
|
+
|
114
|
+
# @param request_client [Gusto::RequestClient]
|
115
|
+
# @return [Gusto::Companies::AsyncFederalTaxDetailsClient]
|
116
|
+
def initialize(request_client:)
|
117
|
+
@request_client = request_client
|
118
|
+
end
|
119
|
+
# Fetches attributes relevant for a company's federal taxes.
|
120
|
+
# scope: `company_federal_taxes:read`
|
121
|
+
#
|
122
|
+
# @param company_id [String] The UUID of the company
|
123
|
+
# @param request_options [Gusto::RequestOptions]
|
124
|
+
# @return [Gusto::FederalTaxDetails::FederalTaxDetails]
|
125
|
+
# @example
|
126
|
+
# api = Gusto::Client.new(
|
127
|
+
# base_url: "https://api.example.com",
|
128
|
+
# environment: Gusto::Environment::DEMO,
|
129
|
+
# token: "YOUR_AUTH_TOKEN"
|
130
|
+
# )
|
131
|
+
# api.companies.federal_tax_details.get(company_id: "company_id")
|
132
|
+
def get(company_id:, request_options: nil)
|
133
|
+
Async do
|
134
|
+
response = @request_client.conn.get do | req |
|
135
|
+
unless request_options&.timeout_in_seconds.nil?
|
136
|
+
req.options.timeout = request_options.timeout_in_seconds
|
137
|
+
end
|
138
|
+
unless request_options&.token.nil?
|
139
|
+
req.headers["Authorization"] = request_options.token
|
140
|
+
end
|
141
|
+
unless request_options&.gusto_api_version.nil?
|
142
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
143
|
+
end
|
144
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
145
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
146
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
147
|
+
end
|
148
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
149
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
150
|
+
end
|
151
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/companies/#{company_id}/federal_tax_details"
|
152
|
+
end
|
153
|
+
Gusto::FederalTaxDetails::FederalTaxDetails.from_json(json_object: response.body)
|
154
|
+
end
|
155
|
+
end
|
156
|
+
# Updates attributes relevant for a company's federal taxes.
|
157
|
+
# This information is required is to onboard a company for use with Gusto Embedded
|
158
|
+
# Payroll.
|
159
|
+
# scope: `company_federal_taxes:write`
|
160
|
+
#
|
161
|
+
# @param company_id [String] The UUID of the company
|
162
|
+
# @param legal_name [String] The legal name of the company
|
163
|
+
# @param ein [String] The EIN of of the company
|
164
|
+
# @param tax_payer_type [Gusto::Companies::FederalTaxDetails::FederalTaxDetailsUpdateRequestTaxPayerType] What type of tax entity the company is
|
165
|
+
# @param filing_form [String] The form used by the company for federal tax filing. One of:
|
166
|
+
# - 941 (Quarterly federal tax return)
|
167
|
+
# - 944 (Annual federal tax return)
|
168
|
+
# @param taxable_as_scorp [Boolean] Whether this company should be taxed as an S-Corporation
|
169
|
+
# @param version [String] The current version of the object. See the [versioning
|
170
|
+
# guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for
|
171
|
+
# information on how to use this field.
|
172
|
+
# @param request_options [Gusto::RequestOptions]
|
173
|
+
# @return [Gusto::FederalTaxDetails::FederalTaxDetails]
|
174
|
+
# @example
|
175
|
+
# api = Gusto::Client.new(
|
176
|
+
# base_url: "https://api.example.com",
|
177
|
+
# environment: Gusto::Environment::DEMO,
|
178
|
+
# token: "YOUR_AUTH_TOKEN"
|
179
|
+
# )
|
180
|
+
# api.companies.federal_tax_details.update(
|
181
|
+
# company_id: "company_id",
|
182
|
+
# legal_name: "Acme Corp.",
|
183
|
+
# tax_payer_type: LLP,
|
184
|
+
# filing_form: "944",
|
185
|
+
# taxable_as_scorp: false,
|
186
|
+
# version: "6cb95e00540706ca48d4577b3c839fbe"
|
187
|
+
# )
|
188
|
+
def update(company_id:, legal_name: nil, ein: nil, tax_payer_type: nil, filing_form: nil, taxable_as_scorp: nil, version:, request_options: nil)
|
189
|
+
Async do
|
190
|
+
response = @request_client.conn.put do | req |
|
191
|
+
unless request_options&.timeout_in_seconds.nil?
|
192
|
+
req.options.timeout = request_options.timeout_in_seconds
|
193
|
+
end
|
194
|
+
unless request_options&.token.nil?
|
195
|
+
req.headers["Authorization"] = request_options.token
|
196
|
+
end
|
197
|
+
unless request_options&.gusto_api_version.nil?
|
198
|
+
req.headers["X-Gusto-API-Version"] = request_options.gusto_api_version
|
199
|
+
end
|
200
|
+
req.headers = { **(req.headers || {}), **@request_client.get_headers, **(request_options&.additional_headers || {}) }.compact
|
201
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
202
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
203
|
+
end
|
204
|
+
req.body = { **(request_options&.additional_body_parameters || {}), legal_name: legal_name, ein: ein, tax_payer_type: tax_payer_type, filing_form: filing_form, taxable_as_scorp: taxable_as_scorp, version: version }.compact
|
205
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/v1/companies/#{company_id}/federal_tax_details"
|
206
|
+
end
|
207
|
+
Gusto::FederalTaxDetails::FederalTaxDetails.from_json(json_object: response.body)
|
208
|
+
end
|
209
|
+
end
|
210
|
+
end
|
211
|
+
end
|
212
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Gusto
|
4
|
+
module Companies
|
5
|
+
module FederalTaxDetails
|
6
|
+
# What type of tax entity the company is
|
7
|
+
class FederalTaxDetailsUpdateRequestTaxPayerType
|
8
|
+
|
9
|
+
C_CORPORATION = "C-Corporation"
|
10
|
+
S_CORPORATION = "S-Corporation"
|
11
|
+
SOLE_PROPRIETOR = "Sole proprietor"
|
12
|
+
LLC = "LLC"
|
13
|
+
LLP = "LLP"
|
14
|
+
LIMITED_PARTNERSHIP = "Limited partnership"
|
15
|
+
CO_OWNERSHIP = "Co-ownership"
|
16
|
+
ASSOCIATION = "Association"
|
17
|
+
TRUSTEESHIP = "Trusteeship"
|
18
|
+
GENERAL_PARTNERSHIP = "General partnership"
|
19
|
+
JOINT_VENTURE = "Joint venture"
|
20
|
+
NON_PROFIT = "Non-Profit"
|
21
|
+
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|