# Gusto

Modern payroll, benefits, and HR management platform for small and medium businesses

- **Category:** human resources
- **Auth:** OAUTH2
- **Composio Managed App Available?** No
- **Tools:** 192
- **Triggers:** 0
- **Slug:** `GUSTO`
- **Version:** 20260403_00

## Tools

### Add Employees to Holiday Pay Policy

**Slug:** `GUSTO_ADD_EMPLOYEES_TO_HOLIDAY_PAY_POLICY`

Tool to add employees to a company's holiday pay policy in Gusto. Use when you need to add one or more employees to the holiday pay policy scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `version` | string | Yes | The current version of the holiday pay policy object. Required for optimistic locking. See the versioning guide for information on how to use this field. |
| `employees` | array | Yes | List of employees to add to the holiday pay policy. Each employee is identified by their UUID. |
| `company_uuid` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add Employees to Time Off Policy

**Slug:** `GUSTO_ADD_EMPLOYEES_TO_TIME_OFF_POLICY`

Tool to add employees to a time off policy in Gusto. Use when you need to assign employees to an existing vacation or sick leave policy. Employees must have at least one job to be added. Accepts starting balances for non-unlimited policies.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employees` | array | Yes | List of employees to add to the time off policy. Each employee must have at least one job. You can optionally specify a starting balance for non-unlimited policies. |
| `time_off_policy_id` | string | Yes | The UUID of the time off policy to add employees to |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add People to Department

**Slug:** `GUSTO_ADD_PEOPLE_TO_DEPARTMENT`

Tool to add employees and contractors to a department in Gusto. Use when you need to assign people to a specific department for organizational structure.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `version` | string | Yes | The current version of the department object. See the versioning guide for information on how to use this field for optimistic locking. |
| `employees` | array | No | Array of employees to add to the department. Each employee is specified by their UUID. |
| `contractors` | array | No | Array of contractors to add to the department. Each contractor is specified by their UUID. |
| `department_uuid` | string | Yes | The UUID of the department to add people to |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Assign Pay Schedules

**Slug:** `GUSTO_ASSIGN_PAY_SCHEDULES`

Tool to assign employees to pay schedules in Gusto. Use when you need to set up or update which pay schedule employees follow. For single assignments, provide default_pay_schedule_uuid. For by_employee or by_department assignments, use partial_assignment=true for partial updates or false for full assignments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `type` | string ("single" | "by_employee" | "by_department" | "hourly_salaried") | Yes | The pay schedule assignment type. Use 'single' to assign one default schedule to all employees, 'by_employee' to assign specific schedules to individual employees, 'by_department' to assign schedules by department, or 'hourly_salaried' to assign different schedules for hourly vs salaried employees. |
| `employees` | array | No | List of employees and their pay schedules. Used when type is 'by_employee'. |
| `company_id` | string | Yes | The UUID of the company. |
| `departments` | array | No | List of departments and their pay schedules. Used when type is 'by_department'. |
| `partial_assignment` | boolean | No | Indicates whether the request provides pay schedule assignments for a partial list of employees or departments of the company. Set to true for partial assignments (only some employees or departments at a time) and false for full assignments (all employees or departments). By default, this is set to false. |
| `hourly_pay_schedule_uuid` | string | No | Pay schedule UUID for hourly employees. Used when type is 'hourly_salaried'. |
| `default_pay_schedule_uuid` | string | No | Default pay schedule UUID for employees. Required when type is 'single', optional for other types as a fallback schedule. |
| `salaried_pay_schedule_uuid` | string | No | Pay schedule UUID for salaried employees. Used when type is 'hourly_salaried'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Calculate Accruing Time Off Hours

**Slug:** `GUSTO_CALCULATE_ACCRUING_TIME_OFF_HOURS`

Tool to calculate accruing time off hours for an employee based on hours worked and used in a pay period. Returns a list of accrued hours for each time off policy associated with the employee, factoring in the policy's accrual method (per hour worked, per hour paid, with/without overtime).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `payroll_id` | string | Yes | The UUID of the payroll |
| `employee_id` | string | Yes | The UUID of the employee |
| `pto_hours_used` | string | No | Paid time off hours used in this pay period. Format: decimal string (e.g., '0.0') |
| `sick_hours_used` | string | No | Sick hours used in this pay period. Format: decimal string (e.g., '0.0') |
| `regular_hours_worked` | string | No | Regular hours worked in this pay period. Format: decimal string (e.g., '40.0') |
| `overtime_hours_worked` | string | No | Overtime hours worked in this pay period. Format: decimal string (e.g., '5.0') |
| `double_overtime_hours_worked` | string | No | Double overtime hours worked in this pay period. Format: decimal string |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Admin

**Slug:** `GUSTO_CREATE_ADMIN`

Tool to create a new admin for a Gusto company. Use when you need to add administrative access to a company account. If the email matches an existing user, creates an admin account for the current user, otherwise creates a new user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | Yes | The email of the admin for Gusto's system. If the email matches an existing user, this will create an admin account for them. |
| `last_name` | string | Yes | The last name of the admin. |
| `company_id` | string | Yes | The UUID of the company to create the admin for. |
| `first_name` | string | Yes | The first name of the admin. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Time Sheet

**Slug:** `GUSTO_CREATE_COMPANIES_TIME_TRACKING_TIME_SHEETS`

Tool to create a time sheet for an employee or contractor in Gusto. Use when you need to record work hours for payroll or time tracking purposes. Requires entity details, job information, and shift times.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `notes` | string | No | Optional notes or comments about the time sheet |
| `job_uuid` | string | Yes | The UUID of the job associated with this time sheet |
| `time_zone` | string | Yes | The time zone for the time sheet. Should be a valid IANA time zone identifier (e.g., 'America/New_York', 'America/Los_Angeles', 'UTC') |
| `entity_type` | string ("Employee" | "Contractor") | Yes | The type of entity. Must be either 'Employee' or 'Contractor' |
| `entity_uuid` | string | Yes | The UUID of the entity (employee or contractor) for whom the time sheet is being created |
| `company_uuid` | string | Yes | The UUID of the company |
| `break_minutes` | integer | No | Total break time in minutes during the shift. If not provided, defaults to 0 |
| `shift_ended_at` | string | Yes | The end time of the shift in ISO 8601 format with timezone (e.g., '2025-01-06T17:00:00Z') |
| `shift_started_at` | string | Yes | The start time of the shift in ISO 8601 format with timezone (e.g., '2025-01-06T09:00:00Z') |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Company Bank Account

**Slug:** `GUSTO_CREATE_COMPANY_BANK_ACCOUNT`

Tool to create a company bank account in Gusto. Use when you need to add a new bank account for payroll processing.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company |
| `account_type` | string ("Checking" | "Savings") | Yes | The bank account type. Must be either 'Checking' or 'Savings' |
| `account_number` | string | Yes | The bank account number |
| `routing_number` | string | Yes | The bank routing number |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Company Benefit

**Slug:** `GUSTO_CREATE_COMPANY_BENEFIT`

Tool to create a company benefit in Gusto. Use when you need to add a new benefit offering (e.g., medical insurance, retirement plan) for a company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `active` | boolean | No | Whether this benefit is active for employee participation. |
| `company_id` | string | Yes | The UUID of the company |
| `description` | string | Yes | The description of the company benefit. For example, a company may offer multiple benefits with an ID of 1 (for Medical Insurance). The description would show something more specific like 'Kaiser Permanente' or 'Blue Cross/Blue Shield'. |
| `benefit_type` | integer | No | The ID of the benefit to which the company benefit belongs. |
| `catch_up_type` | string ("elective" | "deemed") | No | Catch-up contribution type for 401(k) and 403(b) benefits |
| `responsible_for_employee_w2` | boolean | No | Whether the employer is subject to file W-2 forms for an employee on leave. Only applicable to third party sick pay benefits. |
| `responsible_for_employer_taxes` | boolean | No | Whether the employer is subject to pay employer taxes when an employee is on leave. Only applicable to third party sick pay benefits. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create company location

**Slug:** `GUSTO_CREATE_COMPANY_LOCATION`

Tool to create a company location in Gusto. Use when you need to add a new address for a company (mailing, filing, or work location).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip` | string | Yes | ZIP code. Must be a valid US zip (e.g. 12345 or 12345-6789). |
| `city` | string | Yes | City name |
| `state` | string | Yes | State code (e.g. CA). Must be a valid two-letter state code. |
| `country` | string | No | Country code. Defaults to USA. |
| `street_1` | string | Yes | Street address line 1 |
| `street_2` | string | No | Street address line 2 (optional) |
| `company_id` | string | Yes | The UUID of the company |
| `phone_number` | string | Yes | Phone number. Must be exactly 10 digits (no spaces, dashes, or parentheses). |
| `filing_address` | boolean | No | Specify if this location is the company's filing address |
| `mailing_address` | boolean | No | Specify if this location is the company's mailing address |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Company Signatory

**Slug:** `GUSTO_CREATE_COMPANY_SIGNATORY`

Tool to create a new signatory for a Gusto company. Use when you need to add an authorized signatory who can sign company forms and documents.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ssn` | string | Yes | Social Security Number of the signatory in XXX-XX-XXXX format |
| `email` | string | Yes | The email address of the signatory |
| `phone` | string | Yes | The phone number of the signatory |
| `title` | string | Yes | The job title of the signatory |
| `birthday` | string | Yes | The date of birth of the signatory in YYYY-MM-DD format |
| `last_name` | string | Yes | The last name of the signatory |
| `first_name` | string | Yes | The first name of the signatory |
| `company_uuid` | string | Yes | The UUID of the company to create the signatory for |
| `home_address` | object | Yes | The signatory's home address |
| `middle_initial` | string | No | The middle initial of the signatory |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Contractor

**Slug:** `GUSTO_CREATE_CONTRACTOR`

Tool to create an individual or business contractor in Gusto. Use when you need to add a new contractor to a company's payroll system. For individual contractors, first_name and last_name are required; for business contractors, business_name is required. Hourly contractors require hourly_rate.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ein` | string | No | The Federal Employer Identification Number of the contractor business. This attribute is optional for 'Business' contractors and will be ignored for 'Individual' contractors. |
| `ssn` | string | No | The Social Security Number of the individual contractor (9 digits, no dashes). This attribute is optional for 'Individual' contractors and will be ignored for 'Business' contractors. |
| `type` | string ("Individual" | "Business") | Yes | The contractor's type, either 'Individual' or 'Business'. Required field. |
| `email` | string | No | The contractor's email address. This attribute is optional for 'Individual' contractors and will be ignored for 'Business' contractors. |
| `is_active` | boolean | No | The status of the contractor with the company. Defaults to true if not specified. |
| `last_name` | string | No | The contractor's last name. This attribute is required for 'Individual' contractors and will be ignored for 'Business' contractors. |
| `wage_type` | string ("Hourly" | "Fixed") | Yes | The contractor's wage type, either 'Fixed' or 'Hourly'. Required field. |
| `company_id` | string | Yes | The UUID of the company to create the contractor for. This is the unique identifier for the company in Gusto (e.g., '42421951-8b1f-46ef-967d-014ffaaf48d9'). |
| `first_name` | string | No | The contractor's first name. This attribute is required for 'Individual' contractors and will be ignored for 'Business' contractors. |
| `start_date` | string | Yes | The contractor's start date in YYYY-MM-DD format. Required field. |
| `work_state` | string | No | State where the contractor will be conducting the majority of their work for the company. This value is used when generating the new hire report. Use two-letter state codes (e.g., 'CA', 'NY'). |
| `hourly_rate` | string | No | The contractor's hourly rate. This attribute is required if the wage_type is 'Hourly'. Must be a numeric string (e.g., '50.00'). |
| `business_name` | string | No | The name of the contractor business. This attribute is required for 'Business' contractors and will be ignored for 'Individual' contractors. |
| `middle_initial` | string | No | The contractor's middle initial. This attribute is optional for 'Individual' contractors and will be ignored for 'Business' contractors. |
| `self_onboarding` | boolean | No | If true, the contractor is expected to self-onboard. If false, the payroll admin is expected to enter the contractor's onboarding information. |
| `file_new_hire_report` | boolean | No | The boolean flag indicating whether Gusto will file a new hire report for the contractor. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Contractor Bank Account

**Slug:** `GUSTO_CREATE_CONTRACTOR_BANK_ACCOUNT`

Tool to create a contractor bank account in Gusto. Use when you need to add a bank account for contractor payments. Note: Only one bank account per contractor is supported; using this endpoint on a contractor who already has a bank account will replace it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name for the bank account (e.g., 'Main Checking Account'). This is used to identify the bank account. |
| `account_type` | string ("Checking" | "Savings") | Yes | The bank account type. Must be either 'Checking' or 'Savings'. This determines how the account is classified. |
| `contractor_id` | string | Yes | The UUID of the contractor to create the bank account for. This is the unique identifier for the contractor in Gusto (e.g., 'c44ce78a-47d9-4096-999b-4df2f3258483'). |
| `account_number` | string | Yes | The bank account number. This is the contractor's bank account number for payments. |
| `routing_number` | string | Yes | The bank account's routing number (9 digits). This is the ABA routing number used to identify the bank. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Department

**Slug:** `GUSTO_CREATE_DEPARTMENT`

Tool to create a new department in a Gusto company. Use when you need to add a new department for organizational structure.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | The title/name of the department |
| `company_uuid` | string | Yes | The UUID of the company to create the department for |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Earning Type

**Slug:** `GUSTO_CREATE_EARNING_TYPES`

Tool to create a custom earning type for a company in Gusto. If an inactive earning type exists with the same name, this will reactivate it instead of creating a new one.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the custom earning type. |
| `company_id` | string | Yes | The UUID of the company where the earning type will be created. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Employee

**Slug:** `GUSTO_CREATE_EMPLOYEE`

Tool to create a new employee in Gusto. Use when you need to add a new employee to a company's payroll system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ssn` | string | No | Social Security Number of the employee (9 digits, no dashes) |
| `email` | string | No | The employee's personal email address. Required if self_onboarding is true |
| `last_name` | string | Yes | Last name of the employee |
| `company_id` | string | Yes | The UUID of the company to create the employee for |
| `first_name` | string | Yes | First name of the employee |
| `work_email` | string | No | The employee's work email address |
| `date_of_birth` | string | No | Date of birth of the employee in YYYY-MM-DD format |
| `middle_initial` | string | No | Middle initial of the employee |
| `self_onboarding` | boolean | No | If true, employee is expected to self-onboard. If false, payroll admin is expected to enter the employee's onboarding information |
| `preferred_first_name` | string | No | Preferred first name of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Employee Bank Account

**Slug:** `GUSTO_CREATE_EMPLOYEE_BANK_ACCOUNT`

Tool to create an employee bank account in Gusto. Use when you need to add a new bank account for an employee. Note that creating an employee bank account will also update the employee's payment method.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name for the bank account |
| `employee_id` | string | Yes | The UUID of the employee |
| `account_type` | string ("Checking" | "Savings") | Yes | The bank account type. Must be either 'Checking' or 'Savings' |
| `account_number` | string | Yes | The bank account number |
| `routing_number` | string | Yes | The bank account's routing number |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Employee Benefit

**Slug:** `GUSTO_CREATE_EMPLOYEE_BENEFIT`

Tool to enroll an employee in a company benefit in Gusto. Use when you need to add a benefit enrollment for an employee, specifying deductions, contributions, and coverage details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `active` | boolean | No | Whether the employee benefit is active. |
| `catch_up` | boolean | No | Whether the employee should use a benefit's 'catch up' rate. Only Roth 401k and 401k benefits use this value for employees over 50. |
| `elective` | boolean | No | Whether the company contribution is elective (aka 'matching'). For 'tiered', 'elective_amount', and 'elective_percentage' contribution types this is ignored and assumed to be true. |
| `employee_id` | string | Yes | The UUID of the employee to enroll in the benefit. |
| `contribution` | object | No | Contribution configuration object. |
| `limit_option` | string ("Family" | "Individual" | "Joint Filing or Single" | "Married and Filing Separately") | No | Benefit limit options for HSA and Dependent Care FSA. |
| `effective_date` | string | No | The date the employee benefit will start, in YYYY-MM-DD format. If not provided, the API will use a default date. |
| `coverage_amount` | string | No | The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set. |
| `expiration_date` | string | No | The date the employee benefit will expire, in YYYY-MM-DD format. A null value indicates the benefit will not expire. |
| `employee_deduction` | string | No | The amount to be deducted, per pay period, from the employee's pay. |
| `company_benefit_uuid` | string | Yes | The UUID of the company benefit to enroll the employee in. |
| `company_contribution` | string | No | The amount to be paid, per pay period, by the company. |
| `deduct_as_percentage` | boolean | No | Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. |
| `contribute_as_percentage` | boolean | No | Whether the company contribution amount should be treated as a percentage to be deducted from each payroll. |
| `coverage_salary_multiplier` | string | No | The coverage amount as a multiple of the employee's salary. Only applicable for Group Term Life benefits. Note: cannot be set if coverage amount is also set. |
| `deduction_reduces_taxable_income` | string ("unset" | "reduces_taxable_income" | "does_not_reduce_taxable_income") | No | Options for deduction tax impact. |
| `employee_deduction_annual_maximum` | string | No | The maximum employee deduction amount per year. A null value signifies no limit. |
| `company_contribution_annual_maximum` | string | No | The maximum company contribution amount per year. A null value signifies no limit. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Employee Rehire

**Slug:** `GUSTO_CREATE_EMPLOYEE_REHIRE`

Tool to create an employee rehire in Gusto. Use when an employee is scheduled to return to the company after being terminated or dismissed. Requires the employee UUID, effective return date, work location, and whether to file a new hire report.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee to rehire |
| `effective_date` | string | Yes | The day when the employee returns to work in YYYY-MM-DD format |
| `employment_status` | string ("part_time" | "full_time" | "part_time_eligible" | "variable" | "seasonal" | "not_set") | No | Employment status for the rehired employee. |
| `work_location_uuid` | string | Yes | The uuid of the employee's work location |
| `file_new_hire_report` | boolean | Yes | The boolean flag indicating whether Gusto will file a new hire report for the employee |
| `two_percent_shareholder` | boolean | No | Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Employee Work Address

**Slug:** `GUSTO_CREATE_EMPLOYEE_WORK_ADDRESS`

Tool to create an employee's work address in Gusto. Use when you need to assign an employee to a specific company location with an effective date.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee |
| `location_uuid` | string | Yes | Reference to a company location UUID |
| `effective_date` | string | Yes | Date the employee began working at the company location in YYYY-MM-DD format |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Employee YTD Benefit Amounts

**Slug:** `GUSTO_CREATE_EMPLOYEE_YTD_BENEFIT_AMOUNTS_FROM_OTHER_COMPANY`

Tool to create year-to-date benefit amounts from a different company for an employee. Use when you need to record prior YTD benefit contributions and deductions from a previous employer.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tax_year` | integer | Yes | The tax year for which this amount applies |
| `benefit_id` | string | Yes | The UUID of the benefit |
| `employee_id` | string | Yes | The UUID of the employee |
| `benefit_type` | integer | Yes | The benefit type supported by Gusto |
| `ytd_employee_deduction_amount` | string | Yes | The year-to-date employee deduction made outside the current company |
| `ytd_company_contribution_amount` | string | Yes | The year-to-date company contribution made outside the current company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create flows

**Slug:** `GUSTO_CREATE_FLOWS`

Tool to generate a link to access a pre-built workflow in Gusto white-label UI. Use when you need to create onboarding flows, employee setup flows, or other company workflows. For security, all generated flows expire within 1 hour of inactivity or 24 hours from creation time.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `options` | object | No | Optional configuration object that varies based on the flow_type. This can contain arbitrary key-value pairs specific to the flow being generated. |
| `flow_type` | string | Yes | The type of flow to generate. Multiple flow types can be combined by separating them with commas (e.g., 'add_addresses,add_employees,sign_all_forms'). |
| `entity_type` | string ("Company" | "Employee" | "Contractor" | "Payroll") | No | Valid entity types for flows |
| `entity_uuid` | string | No | UUID of the target entity applicable to the flow. This field is optional for company flows but may be required when entity_type is specified. |
| `company_uuid` | string | Yes | The UUID of the company to create the flow for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Garnishment

**Slug:** `GUSTO_CREATE_GARNISHMENTS`

Tool to create a garnishment (employee deduction) in Gusto. Use when you need to add fixed amounts or percentages deducted from an employee's pay, such as court-ordered payments, loan repayments, or other deductions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `times` | integer | No | The number of times to apply the garnishment. Ignored if recurring is true. |
| `active` | boolean | No | Whether or not this garnishment is currently active. Defaults to true. |
| `amount` | string | Yes | The amount of the garnishment. Either a percentage or a fixed dollar amount. Represented as a float, e.g. "8.00". |
| `recurring` | boolean | No | Whether the garnishment should recur indefinitely. Defaults to false. |
| `description` | string | No | The description of the garnishment. |
| `employee_id` | string | Yes | The UUID of the employee |
| `total_amount` | string | No | A maximum total deduction for the lifetime of this garnishment. A null value indicates no maximum. |
| `child_support` | object | No | Additional child support order details. |
| `court_ordered` | boolean | Yes | Whether the garnishment is court ordered. |
| `annual_maximum` | string | No | The maximum deduction per annum. A null value indicates no maximum. Represented as a float, e.g. "200.00". |
| `garnishment_type` | string ("child_support" | "federal_tax_lien" | "state_tax_lien" | "student_loan" | "creditor_garnishment" | "federal_loan" | "other_garnishment") | No | The specific type of garnishment for court ordered garnishments. |
| `pay_period_maximum` | string | No | The maximum deduction per pay period. A null value indicates no maximum. Represented as a float, e.g. "16.00". |
| `deduct_as_percentage` | boolean | No | Whether the amount should be treated as a percentage to be deducted per pay period. Defaults to false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Historical Employee

**Slug:** `GUSTO_CREATE_HISTORICAL_EMPLOYEE`

Tool to create a historical employee in Gusto. Use when you need to add an employee who was previously dismissed from the company in the current year. Requires personal information (name, DOB, SSN), addresses (home and work location UUID), job hire date, and termination effective date.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job` | object | Yes | The historical employee's job information including hire date. |
| `ssn` | string | Yes | Social Security Number of the historical employee (9 digits, no dashes, e.g., '987654321'). |
| `email` | string | No | The employee's personal email address. If provided, the email address will be saved to the employee. |
| `last_name` | string | Yes | Last name of the historical employee (e.g., 'Smith'). |
| `first_name` | string | Yes | First name of the historical employee (e.g., 'Jane'). |
| `termination` | object | Yes | The historical employee's termination information including effective date. The termination date must be in the current year. |
| `company_uuid` | string | Yes | The UUID of the company to create the historical employee for (e.g., '42421951-8b1f-46ef-967d-014ffaaf48d9'). This is the unique identifier for the company in Gusto. |
| `home_address` | object | Yes | The historical employee's home address including street, city, state, and zip code. |
| `work_address` | object | Yes | The historical employee's work address with location UUID reference. |
| `date_of_birth` | string | Yes | Date of birth of the historical employee in YYYY-MM-DD format (e.g., '1988-03-22'). |
| `middle_initial` | string | No | Middle initial of the historical employee (e.g., 'M'). |
| `employee_state_taxes` | object | No | Employee state tax information for workers' compensation. |
| `preferred_first_name` | string | No | Preferred first name of the historical employee (e.g., 'Janie'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Holiday Pay Policy

**Slug:** `GUSTO_CREATE_HOLIDAY_PAY_POLICY`

Tool to create a holiday pay policy for a company in Gusto. Use when you need to define which federal holidays will be paid holidays for a company's employees.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company |
| `federal_holidays` | object | Yes | An object containing federal holiday objects, each containing a boolean selected property. Specify which of the eleven supported federal holidays should be included in the holiday pay policy. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Job

**Slug:** `GUSTO_CREATE_JOB`

Tool to create a job for an employee in Gusto. Use when you need to add a new job or position for an existing employee in the payroll system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | The job title |
| `hire_date` | string | Yes | The date when the employee was hired or rehired for the job in YYYY-MM-DD format |
| `employee_id` | string | Yes | The UUID of the employee to create the job for |
| `state_wc_covered` | boolean | No | Whether this job is eligible for workers' compensation coverage in the state of Washington (WA) |
| `state_wc_class_code` | string | No | The risk class code for workers' compensation in Washington state. Please visit Washington state's Risk Class page to learn more. |
| `two_percent_shareholder` | boolean | Yes | Whether the employee owns at least 2% of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create job compensation

**Slug:** `GUSTO_CREATE_JOB_COMPENSATION`

Tool to create a compensation for a job in Gusto. Use when you need to set up payment details (rate, payment unit, FLSA status) for an employee's job.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `rate` | string | No | The dollar amount paid per payment unit. |
| `job_id` | string | Yes | The UUID of the job to create compensation for. |
| `flsa_status` | string ("Exempt" | "Salaried Nonexempt" | "Nonexempt" | "Owner" | "Commission Only Exempt" | "Commission Only Nonexempt") | Yes | The FLSA status for this compensation. Salaried ('Exempt') employees are paid a fixed salary every pay period. Salaried with overtime ('Salaried Nonexempt') employees are paid a fixed salary every pay period, and receive overtime pay when applicable. Hourly ('Nonexempt') employees are paid for the hours they work, and receive overtime pay when applicable. Commissioned employees ('Commission Only Exempt') earn wages based only on commission. Commissioned with overtime ('Commission Only Nonexempt') earn wages based on commission, and receive overtime pay when applicable. Owners ('Owner') are employees that own at least twenty percent of the company. |
| `payment_unit` | string ("Hour" | "Week" | "Month" | "Year" | "Paycheck") | Yes | The unit accompanying the compensation rate. If the employee is an owner, rate should be 'Paycheck'. |
| `minimum_wages` | array | No | The minimum wage records to apply to the compensation. |
| `effective_date` | string | No | The date when the compensation takes effect in YYYY-MM-DD format. |
| `adjust_for_minimum_wage` | boolean | No | Determines whether the compensation should be adjusted for minimum wage. Only applies to Nonexempt employees. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Payroll General Ledger Report

**Slug:** `GUSTO_CREATE_PAYROLL_GENERAL_LEDGER_REPORT`

Tool to create a general ledger report for a payroll with optional aggregation by job, department, or integration type. Use when you need accounting entries for a payroll run. The report is generated asynchronously; use the returned request_uuid to poll for completion and retrieve the JSON report.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `payroll_id` | string | Yes | The UUID of the payroll to generate the general ledger report for. |
| `aggregation` | string ("default" | "job" | "department" | "integration") | Yes | The breakdown of the report. Use 'default' for no split, 'job' to aggregate by job, 'department' to aggregate by department, or 'integration' to aggregate by integration type. |
| `integration_type` | string ("xero" | "qbo") | No | The kind of integration set up for the company. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Pay Schedule Assignment Preview

**Slug:** `GUSTO_CREATE_PAY_SCHEDULES_ASSIGNMENT_PREVIEW`

Tool to preview employee pay schedule assignment changes for a company. Use when you need to see how changing pay schedules will affect employees' pay periods and transition periods before applying the changes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `type` | string | Yes | The pay schedule assignment type. Allowed values: by_employee, by_department, hourly_salaried, single. |
| `employees` | array | No | List of employees and their pay schedules. |
| `company_id` | string | Yes | The UUID of the company. |
| `departments` | array | No | List of departments and their pay schedules. |
| `partial_assignment` | boolean | No | Indicates whether the request provides pay schedule assignments for a partial list of employees or departments of the company. By default, this is set to false. |
| `hourly_pay_schedule_uuid` | string | No | Pay schedule for hourly employees. |
| `default_pay_schedule_uuid` | string | No | Default pay schedule for employees. |
| `salaried_pay_schedule_uuid` | string | No | Pay schedule for salaried employees. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Custom Report

**Slug:** `GUSTO_CREATE_REPORTS`

Tool to create a custom report for a company with custom columns, groupings, and filters. Use when you need to generate payroll, employee, or tax reports with specific data fields. The request_uuid in the response can be used to poll for the status and report URL upon completion. Report URLs are valid for 10 minutes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `columns` | array | Yes | List of columns to include in the report. Must contain at least one column. |
| `end_date` | string | No | End date of data to filter by in YYYY-MM-DD format. |
| `file_type` | string ("csv" | "json" | "pdf") | Yes | The type of file to generate for the report. |
| `groupings` | array | Yes | How to group the data in the report. Must contain at least one grouping. |
| `start_date` | string | No | Start date of data to filter by in YYYY-MM-DD format. |
| `custom_name` | string | No | The title of the report. If not provided, a default name will be used. |
| `with_totals` | boolean | No | Whether to include subtotals and grand totals in the report. |
| `company_uuid` | string | Yes | The UUID of the company to create the report for. |
| `employee_uuids` | array | No | List of employee UUIDs to filter by. If provided, only these employees will be included in the report. |
| `payment_method` | string ("check" | "direct_deposit") | No | Payment method filter options |
| `employment_type` | string ("exempt" | "salaried_nonexempt" | "nonexempt" | "commission_only_exempt" | "commission_only_nonexempt") | No | Employment type filter options |
| `department_uuids` | array | No | List of department UUIDs to filter by. If provided, only employees in these departments will be included. |
| `employment_status` | string ("active_full_time" | "active_part_time" | "active_part_time_eligible" | "active_variable" | "active_seasonal" | "active" | "dismissed") | No | Employment status filter options |
| `dismissed_end_date` | string | No | Dismissed end date of employees to filter by in YYYY-MM-DD format. |
| `work_address_uuids` | array | No | List of work address UUIDs to filter by. If provided, only employees at these addresses will be included. |
| `dismissed_start_date` | string | No | Dismissed start date of employees to filter by in YYYY-MM-DD format. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Employees Annual FICA Wage Report

**Slug:** `GUSTO_CREATE_REPORTS_EMPLOYEES_ANNUAL_FICA_WAGE`

Tool to generate an annual FICA wage report for all employees in a company over a specified year range. Use when you need detailed wage information subject to Social Security and Medicare taxes for benefits integrations or compliance verification. The report is generated asynchronously; use the returned request_uuid to poll for completion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `end_year` | integer | Yes | The end year for the report. Must be the current year or earlier, and must be greater than or equal to start_year. |
| `company_id` | string | Yes | The UUID of the company to generate the report for. |
| `start_year` | integer | Yes | The start year for the report. Must be 2011 or later. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Section 603 High Earner Status

**Slug:** `GUSTO_CREATE_SECTION603_HIGH_EARNER_STATUS`

Tool to create a Section 603 high earner status for an employee in Gusto. Use when you need to designate whether an employee qualifies as a high earner under Section 603 of the SECURE 2.0 Act for a specific year.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_uuid` | string | Yes | The UUID of the employee for whom to create the Section 603 high earner status. |
| `effective_year` | integer | Yes | The year for which this high earner status applies. Must be a valid year. |
| `is_high_earner` | boolean | Yes | Whether the employee is classified as a high earner for Section 603 purposes. Section 603 of the SECURE 2.0 Act requires employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold to have their catch-up contributions to pre-tax retirement benefits designated as post-tax contributions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Time Off Policy

**Slug:** `GUSTO_CREATE_TIME_OFF_POLICY`

Tool to create a time off policy in Gusto for a company. Use when you need to set up vacation or sick leave policies with specific accrual methods and limits. The policy can be configured with accrual rates, maximum hours, carryover limits, and termination payout rules.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name of the time off policy. This is a required field that identifies the policy (e.g., 'Test Vacation Policy', 'Sick Leave'). |
| `complete` | boolean | No | Boolean representing if a policy has completed configuration. Set to true when the policy setup is complete and ready to be activated. |
| `max_hours` | string | No | The max number of hours an employee can accrue total. Represented as a float string (e.g., '160.0', '240.0'). |
| `policy_type` | string ("vacation" | "sick") | Yes | Type of the time off policy. Must be either 'vacation' or 'sick'. This is a required field. |
| `accrual_rate` | string | No | The rate at which the time off hours will accrue for an employee on the policy. Represented as a float string (e.g., '0.05', '40.0'). Required for hourly accrual methods. |
| `company_uuid` | string | Yes | The UUID of the company to create the time off policy for. This is the unique identifier for the company in Gusto (e.g., '42421951-8b1f-46ef-967d-014ffaaf48d9'). |
| `accrual_method` | string ("per_hour_worked" | "per_hour_paid" | "per_hour_worked_no_overtime" | "per_hour_paid_no_overtime" | "per_pay_period") | Yes | Policy time off accrual method. Determines how time off hours accrue for employees. This is a required field. Options include per_hour_worked, per_hour_paid, per_hour_worked_no_overtime, per_hour_paid_no_overtime, per_pay_period, or per_year. |
| `accrual_rate_unit` | string | No | The number of hours an employee has to work or be paid for to accrue the number of hours set in the accrual rate. Only used for hourly policies (per_hour_paid, per_hour_paid_no_overtime, per_hour_work, per_hour_worked_no_overtime). Represented as a float string (e.g., '1.0', '40.0'). |
| `policy_reset_date` | string | No | The date the policy resets. Format MM-DD (e.g., '01-01' for January 1st, '07-01' for July 1st). |
| `carryover_limit_hours` | string | No | The max number of hours an employee can carryover from one year to the next. Represented as a float string (e.g., '40.0', '80.0'). |
| `paid_out_on_termination` | boolean | No | Boolean representing if an employee's accrued time off hours will be paid out on termination. Set to true if unused hours should be paid when an employee leaves. |
| `max_accrual_hours_per_year` | string | No | The max number of hours an employee can accrue in a year. Represented as a float string (e.g., '120.0', '200.0'). |
| `accrual_waiting_period_days` | integer | No | Number of days before an employee on the policy will begin accruing time off hours. If not specified, employees start accruing immediately. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Deactivate Earning Type

**Slug:** `GUSTO_DEACTIVATE_EARNING_TYPE`

Tool to deactivate an earning type for a company. Use when you need to remove or disable an earning type from a company's payroll configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company |
| `earning_type_uuid` | string | Yes | The UUID of the earning type to deactivate |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Deactivate Time Off Policy

**Slug:** `GUSTO_DEACTIVATE_TIME_OFF_POLICY`

Tool to deactivate a time off policy in Gusto. Use when you need to disable or remove a vacation or sick leave policy from active use. Note: The policy cannot be deactivated if there are pending time off requests.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `time_off_policy_id` | string | Yes | The UUID of the time off policy to deactivate. This is the unique identifier for the policy in Gusto (e.g., 'e9042ea2-63e7-40d5-b4e0-dbc8b650e904'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Company Bank Account

**Slug:** `GUSTO_DELETE_COMPANIE_BANK_ACCOUNTS`

Tool to disable a company bank account in Gusto. Use when you need to deactivate a bank account for a company. A bank account cannot be disabled if it is used for any unprocessed payments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company |
| `bank_account_id` | string | Yes | The UUID of the company bank account to disable |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Company Holiday Pay Policy

**Slug:** `GUSTO_DELETE_COMPANY_HOLIDAY_PAY_POLICY`

Tool to delete a company's holiday pay policy in Gusto. Use when you need to remove the holiday pay policy for a company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Compensation

**Slug:** `GUSTO_DELETE_COMPENSATION`

Tool to delete a compensation by its UUID. Use when you need to remove a compensation record from Gusto.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `compensation_id` | string | Yes | The UUID of the compensation to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Contractor

**Slug:** `GUSTO_DELETE_CONTRACTOR`

Tool to delete a contractor from Gusto. Use when you need to permanently remove a contractor from the system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `contractor_uuid` | string | Yes | The UUID of the contractor to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Department

**Slug:** `GUSTO_DELETE_DEPARTMENT`

Tool to delete a department in Gusto. Use when you need to permanently remove a department. All employees and contractors must be removed from the department before deletion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `department_uuid` | string | Yes | The UUID of the department to delete. Note: You cannot delete a department until all employees and contractors have been removed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Employee

**Slug:** `GUSTO_DELETE_EMPLOYEE`

Tool to delete an onboarding employee from Gusto. Use when you need to remove an employee who has not yet been onboarded.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Employee Bank Account

**Slug:** `GUSTO_DELETE_EMPLOYEE_BANK_ACCOUNT`

Tool to delete an employee bank account in Gusto. Use when you need to remove a bank account from an employee's profile.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee |
| `bank_account_uuid` | string | Yes | The UUID of the bank account |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Employee Benefit

**Slug:** `GUSTO_DELETE_EMPLOYEE_BENEFIT`

Tool to delete an employee benefit by its UUID. Use when you need to remove an employee's enrollment in a specific benefit from Gusto.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_benefit_id` | string | Yes | The UUID of the employee benefit to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Employee Home Address

**Slug:** `GUSTO_DELETE_EMPLOYEE_HOME_ADDRESS`

Tool to delete an employee's home address in Gusto. Use when you need to remove a home address from an employee's profile.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `home_address_uuid` | string | Yes | The UUID of the home address |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Employee Termination

**Slug:** `GUSTO_DELETE_EMPLOYEE_TERMINATION`

Tool to delete an employee termination in Gusto. Use when you need to remove a pending termination for an employee.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete I-9 Authorization Document

**Slug:** `GUSTO_DELETE_I9_AUTHORIZATION_DOCUMENT`

Tool to delete an employee's I-9 verification document from Gusto. Use when removing documents provided to verify identity and work authorization in the United States.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `document_id` | string | Yes | The UUID of the I-9 verification document to delete |
| `employee_id` | string | Yes | The UUID of the employee whose I-9 document is being deleted |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Job

**Slug:** `GUSTO_DELETE_JOB`

Tool to delete an individual job from Gusto. Use when you need to remove a job by its UUID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | The UUID of the job to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Time Tracking Time Sheet

**Slug:** `GUSTO_DELETE_TIME_TRACKING_TIME_SHEET`

Tool to delete a time sheet from Gusto time tracking. Use when you need to permanently remove a time sheet from the system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `version` | string | No | API version parameter for the request |
| `time_sheet_uuid` | string | Yes | The unique identifier for the specific time sheet to be removed |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Work Address

**Slug:** `GUSTO_DELETE_WORK_ADDRESS`

Tool to delete an employee's work address from Gusto. Use when you need to remove a work address by its UUID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `work_address_uuid` | string | Yes | The UUID of the work address to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Download Employee Forms PDF

**Slug:** `GUSTO_DOWNLOAD_EMPLOYEE_FORMS_PDF`

Tool to get the link to an employee form PDF. Use when you need to retrieve or download a specific employee form document by providing the employee UUID and form UUID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `form_id` | string | Yes | The UUID of the form |
| `employee_id` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Download Company Forms PDF

**Slug:** `GUSTO_DOWNLOAD_FORMS_PDF`

Tool to get the link to a company form PDF. Use when you need to retrieve or download a specific company form document by providing the form UUID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `form_id` | string | Yes | The UUID of the form |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Finish company onboarding

**Slug:** `GUSTO_FINISH_COMPANY_ONBOARDING`

Tool to finish company onboarding in Gusto. Use when you need to mark a company's onboarding process as complete.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company to finish onboarding for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Benefit

**Slug:** `GUSTO_GET_BENEFIT`

Tool to retrieve a benefit supported by Gusto. Returns high-level information about a particular benefit type and its tax considerations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `benefit_id` | string | Yes | The benefit type ID in Gusto. This is the unique identifier for a particular benefit type. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Company Departments

**Slug:** `GUSTO_GET_COMPANIES_DEPARTMENTS`

Tool to retrieve all departments of a company from Gusto. Use when you need to get a list of all departments, including their employees and contractors.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company to retrieve departments for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get company

**Slug:** `GUSTO_GET_COMPANY`

Tool to retrieve company details from Gusto by company UUID. Use when you need to get information about a specific company including status, locations, admins, and payroll settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Company Attachment Download URL

**Slug:** `GUSTO_GET_COMPANY_ATTACHMENT_DOWNLOAD_URL`

Tool to retrieve a temporary URL to download a company attachment file. Use when you need to access uploaded company documents or files.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company |
| `company_attachment_uuid` | string | Yes | The UUID of the company attachment |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Company Benefit

**Slug:** `GUSTO_GET_COMPANY_BENEFIT`

Tool to retrieve a specific company benefit by its UUID. Use when you need to get detailed information about a company benefit, including employee participation if requested.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `include` | string ("all_benefits") | No | Include option for the request |
| `company_benefit_id` | string | Yes | The UUID of the company benefit to retrieve. |
| `with_employee_benefits` | boolean | No | Whether to return employee benefits associated with the benefit. Set to true to include employee benefits in the response. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Company Earning Types

**Slug:** `GUSTO_GET_COMPANY_EARNING_TYPES`

Tool to retrieve all earning types (default and custom) for a company. Use when you need to list available earning types that can be assigned to employees for payroll purposes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company to retrieve earning types for |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get company holiday pay policy

**Slug:** `GUSTO_GET_COMPANY_HOLIDAY_PAY_POLICY`

Tool to retrieve a company's holiday pay policy including which federal holidays are selected and which employees are covered. Use when you need to access holiday pay configuration for a company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Company Locations

**Slug:** `GUSTO_GET_COMPANY_LOCATIONS`

Tool to get all company locations. Use when you need to retrieve address information for all locations associated with a specific company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25 |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `company_id` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get company onboarding status

**Slug:** `GUSTO_GET_COMPANY_ONBOARDING_STATUS`

Tool to retrieve a company's onboarding status from Gusto. Use when you need to check if a company has completed onboarding and view the status of individual onboarding steps.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company to retrieve onboarding status for. |
| `additional_steps` | string | No | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get company report template

**Slug:** `GUSTO_GET_COMPANY_REPORT_TEMPLATE`

Tool to get a report template for a company. Use when you need to retrieve the recommended columns and groupings for a specific report type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `report_type` | string | Yes | The report type |
| `company_uuid` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Company Suspensions

**Slug:** `GUSTO_GET_COMPANY_SUSPENSIONS`

Tool to retrieve all suspension records for a company. Use when you need to check if a company's Gusto account has been suspended and view suspension details including dates, reasons, and tax reconciliation settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get compensation

**Slug:** `GUSTO_GET_COMPENSATIONS`

Tool to retrieve compensation details by compensation UUID. Use when you need information on how much is paid out for a job, including rate, payment unit, and FLSA status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `compensation_id` | string | Yes | The UUID of the compensation to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Contractor

**Slug:** `GUSTO_GET_CONTRACTOR`

Tool to retrieve a specific contractor by UUID from Gusto. Use when you need to get detailed information about a contractor including their personal details, employment status, onboarding status, and payment information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `contractor_uuid` | string | Yes | The UUID of the contractor to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Contractor Address

**Slug:** `GUSTO_GET_CONTRACTOR_ADDRESS`

Tool to retrieve a contractor's address from Gusto. Use when you need to get the current address information for a contractor. The address is used to determine certain tax information and is geocoded to ensure validity.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `contractor_id` | string | Yes | The UUID of the contractor whose address you want to retrieve. This is the unique identifier for the contractor in Gusto. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Contractor Bank Accounts

**Slug:** `GUSTO_GET_CONTRACTOR_BANK_ACCOUNTS`

Tool to get all bank accounts for a specific contractor. Use when you need to retrieve bank account information including account type, routing numbers, and masked account numbers for a contractor.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `contractor_uuid` | string | Yes | The UUID of the contractor whose bank accounts you want to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Contractor Document

**Slug:** `GUSTO_GET_CONTRACTOR_DOCUMENT`

Tool to retrieve a contractor document by UUID. Use when you need to get details about a specific contractor document including its title, description, signing status, and associated fields.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `document_uuid` | string | Yes | The UUID of the document |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Contractor Document PDF

**Slug:** `GUSTO_GET_CONTRACTOR_DOCUMENT_PDF`

Tool to retrieve the PDF download URL for a contractor document. Use when you need to access or download a specific contractor document by its UUID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `document_uuid` | string | Yes | The UUID of the document to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Contractor Payment Groups

**Slug:** `GUSTO_GET_CONTRACTOR_PAYMENT_GROUPS`

Tool to get contractor payment groups for a company. Use when you need to retrieve payment groups for contractors within a specific time period. Returns groups with submission and credit blockers but without individual contractor payments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25 |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `end_date` | string | No | The time period for which to retrieve contractor payment groups. Defaults to today's date. |
| `company_id` | string | Yes | The UUID of the company |
| `start_date` | string | No | The time period for which to retrieve contractor payment groups. Defaults to 6 months ago. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Contractor Payments

**Slug:** `GUSTO_GET_CONTRACTOR_PAYMENTS`

Tool to retrieve contractor payments for a company within a specified date range. Use when you need to fetch payment information for contractors, optionally filtered by specific contractor or date grouping.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25. |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `end_date` | string | Yes | The end date for the time period to retrieve contractor payments. If left empty, defaults to today's date. Format: YYYY-MM-DD. |
| `company_id` | string | Yes | The UUID of the company. |
| `start_date` | string | Yes | The start date for the time period to retrieve contractor payments. Format: YYYY-MM-DD. |
| `group_by_date` | boolean | No | Display contractor payments results grouped by check date if set to true. |
| `contractor_uuid` | string | No | The UUID of the contractor. When specified, will load all payments for that contractor. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Department

**Slug:** `GUSTO_GET_DEPARTMENT`

Tool to retrieve details of a specific department from Gusto by department UUID. Use when you need to get information about a specific department including its employees and contractors.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `department_uuid` | string | Yes | The UUID of the department to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get employee

**Slug:** `GUSTO_GET_EMPLOYEE`

Tool to retrieve detailed information about an employee by their UUID. Use when you need employee information including personal details, job information, compensation, benefits, and employment status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `include` | array | No | Include the requested attribute(s) in the employee response. Options: 'custom_fields' for custom fields, 'portal_invitations' for portal invitation status. Multiple options can be provided. |
| `employee_id` | string | Yes | The UUID of the employee to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Employee All Benefits

**Slug:** `GUSTO_GET_EMPLOYEE_ALL_BENEFITS`

Tool to get all benefits for a specific employee by their UUID. Use when you need to retrieve all benefit enrollments for an employee, including contribution amounts, deduction details, and coverage information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of employee benefits per page. For majority of endpoints will default to 25. Use this to control the page size when paginating results. |
| `page` | integer | No | The page number to retrieve. When unspecified, will load all objects unless endpoint forces pagination. Use this for paginated results. |
| `include` | string ("all_benefits") | No | Options for including additional data in the response. |
| `employee_id` | string | Yes | The UUID of the employee to retrieve benefits for. This is a required identifier for the employee whose benefits you want to list. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Employee Bank Accounts

**Slug:** `GUSTO_GET_EMPLOYEE_BANK_ACCOUNTS`

Tool to retrieve all bank accounts for a specific employee. Use when you need to view an employee's banking details for payroll processing or direct deposit setup.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25 |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `employee_id` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Employee Benefit

**Slug:** `GUSTO_GET_EMPLOYEE_BENEFIT`

Tool to retrieve a specific employee benefit enrollment by UUID. Use when you need to get detailed information about an employee's enrollment in a company benefit, including contribution amounts, deduction details, and coverage information. Benefits containing PHI require the employee_benefits:read:phi scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_benefit_id` | string | Yes | The UUID of the employee benefit to retrieve. This is the unique identifier for the specific employee benefit enrollment record. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get employee federal taxes

**Slug:** `GUSTO_GET_EMPLOYEE_FEDERAL_TAXES`

Tool to retrieve an employee's federal tax withholding information including W4 details. Use when you need to access federal tax configuration for a specific employee. The response format varies based on whether the employee is using pre-2020 or 2020+ W4 form.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_uuid` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Employee Form

**Slug:** `GUSTO_GET_EMPLOYEE_FORMS`

Tool to get a specific employee form by employee ID and form ID. Use when you need to retrieve details about a specific form for an employee, including tax forms and other employee documents.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `form_id` | string | Yes | The UUID of the form |
| `employee_id` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get employee jobs

**Slug:** `GUSTO_GET_EMPLOYEE_JOBS`

Tool to retrieve all jobs for a specific employee in Gusto. Use when you need to get job information including titles, locations, compensation details, and employment history for an employee.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of jobs per page. For majority of endpoints will default to 25. |
| `page` | integer | No | The page number to retrieve. When unspecified, will load all jobs unless endpoint forces pagination. |
| `include` | string ("all_compensations") | No | Options for additional data to include in the response |
| `employee_id` | string | Yes | The UUID of the employee whose jobs you want to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Employee Payment Method

**Slug:** `GUSTO_GET_EMPLOYEE_PAYMENT_METHOD`

Tool to retrieve an employee's payment method configuration. Use when you need to view how employee payments are split across bank accounts or if they are paid by check.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee whose payment method you want to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get employee pay stub

**Slug:** `GUSTO_GET_EMPLOYEE_PAY_STUB`

Tool to retrieve an employee's pay stub for a specified payroll as a PDF file. Use when you need to download a pay stub document for a specific employee and payroll.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `payroll_id` | string | Yes | The UUID of the payroll. |
| `employee_id` | string | Yes | The UUID of the employee. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Employee Recurring Reimbursements

**Slug:** `GUSTO_GET_EMPLOYEE_RECURRING_REIMBURSEMENTS`

Tool to get all recurring reimbursements for an employee. Use when you need to retrieve recurring reimbursement information for a specific employee.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of recurring reimbursements per page. For majority of endpoints will default to 25. Use with page parameter for pagination. |
| `page` | integer | No | The page number to retrieve. When unspecified, will load all recurring reimbursements unless endpoint forces pagination. Use for paginated results. |
| `employee_id` | string | Yes | The UUID of the employee whose recurring reimbursements you want to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get employee state taxes

**Slug:** `GUSTO_GET_EMPLOYEE_STATE_TAXES`

Tool to retrieve an employee's state tax information including withholding details and state-specific questions. Use when you need to access state tax configuration for a specific employee.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_uuid` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get federal tax details

**Slug:** `GUSTO_GET_FEDERAL_TAX_DETAILS`

Tool to retrieve federal tax details for a company including EIN verification status, tax payer type, filing form, and deposit schedule. Use when you need to access a company's federal tax configuration and IRS-related information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Company Form

**Slug:** `GUSTO_GET_FORM`

Tool to get a company form by its UUID. Use when you need to retrieve details about a specific form including its type, title, year, quarter, and signing status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `form_id` | string | Yes | The UUID of the form |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Garnishment

**Slug:** `GUSTO_GET_GARNISHMENT`

Tool to retrieve a garnishment (employee deduction) from Gusto by garnishment UUID. Use when you need to get details about fixed amounts or percentages deducted from an employee's pay, such as court-ordered payments for child support or back taxes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `garnishment_id` | string | Yes | The UUID of the garnishment |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Home Address

**Slug:** `GUSTO_GET_HOME_ADDRESS`

Tool to get an employee's home address by its UUID. Use when you need to retrieve specific address details for tax purposes or employee records.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `home_address_uuid` | string | Yes | The UUID of the home address |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get job

**Slug:** `GUSTO_GET_JOB`

Tool to retrieve a specific job by UUID in Gusto. Use when you need to get detailed job information including title, location, compensation details, and employment data for a specific job.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | The UUID of the job to retrieve. |
| `include` | string ("all_compensations") | No | Options for additional data to include in the response |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get location

**Slug:** `GUSTO_GET_LOCATION`

Tool to retrieve a specific location by UUID. Use when you need to get detailed address information for a single location.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `location_id` | string | Yes | The UUID of the location |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Notification

**Slug:** `GUSTO_GET_NOTIFICATION`

Tool to retrieve a notification's details by UUID from Gusto. Use when you need to get detailed information about a specific notification including its status, due date, and related resources.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `notification_uuid` | string | Yes | The notification entity_uuid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get payroll

**Slug:** `GUSTO_GET_PAYROLL`

Tool to retrieve a single payroll by its UUID. Returns payroll details including employee compensations and totals if calculated or processed. Use when you need detailed information about a specific payroll run.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25. Maximum is 100 for this endpoint. |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `include` | array | No | Include the requested attribute in the response. Multiple attributes can be specified. |
| `sort_by` | string ("first_name" | "last_name") | No | Field to sort employee compensations by. |
| `company_id` | string | Yes | The UUID of the company. |
| `payroll_id` | string | Yes | The UUID of the payroll. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get payroll receipt

**Slug:** `GUSTO_GET_PAYROLL_RECEIPT`

Tool to retrieve a payroll receipt by payroll UUID. Returns payment details including employee compensations, taxes, and totals. Dollar amounts are returned as string representations of numeric decimals to the cent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `payroll_uuid` | string | Yes | The UUID of the payroll to retrieve the receipt for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get pay schedule

**Slug:** `GUSTO_GET_PAY_SCHEDULE`

Tool to retrieve a specific pay schedule by its UUID. Use when you need detailed information about a particular pay schedule for a company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company. |
| `pay_schedule_id` | string | Yes | The UUID of the pay schedule. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get People Batches

**Slug:** `GUSTO_GET_PEOPLE_BATCHES`

Tool to retrieve the status and results of a people batch from Gusto. Use when you need to poll the batch processing status and retrieve results after submitting a people batch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `people_batch_uuid` | string | Yes | The UUID of the people batch to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Recurring Reimbursement

**Slug:** `GUSTO_GET_RECURRING_REIMBURSEMENT`

Tool to get a recurring reimbursement by its UUID. Use when you need to retrieve details of a specific recurring reimbursement.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The UUID of the recurring reimbursement to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get report

**Slug:** `GUSTO_GET_REPORTS`

Tool to get a company's report given the request_uuid. Returns the report request's status and, if complete, the report URL. Use when you need to check the status of a report generation request or retrieve the completed report URL.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `request_uuid` | string | Yes | The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get salary estimate

**Slug:** `GUSTO_GET_SALARY_ESTIMATE`

Tool to retrieve a salary estimate for an S-Corp owner from Gusto. Use when you need to get details about a salary estimate calculation based on occupation, experience level, location, and business revenue.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `uuid` | string | Yes | The UUID of the salary estimate to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get state tax requirements

**Slug:** `GUSTO_GET_STATE_TAX_REQUIREMENTS`

Tool to retrieve state-specific tax requirements for a company in Gusto. Use when you need to access required tax configuration fields for a specific US state including withholding details, account numbers, and filing information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `state` | string | Yes | Two-letter US state abbreviation (e.g., CA, NY, TX) |
| `scheduling` | boolean | No | When true, return 'new' requirement sets with valid effective_from dates that are available to save new effective dated values |
| `company_uuid` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Company Benefit Summary

**Slug:** `GUSTO_GET_SUMMARY_COMPANY_BENEFITS_SUMMARY`

Tool to retrieve summary benefit data for a specific company benefit. Returns aggregate contribution and deduction amounts for a given time period. Use when you need to analyze benefit costs, employee participation, or financial reporting for a specific company benefit.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `detailed` | boolean | No | Display detailed employee payroll item summary. Set to true to include per-employee breakdown with payroll-level details, or false/omit for aggregate company-level summary only. |
| `end_date` | string | No | The end date for which to retrieve company benefit summary in YYYY-MM-DD format. If left empty, defaults to today's date. |
| `start_date` | string | No | The start date for which to retrieve company benefit summary in YYYY-MM-DD format. If not provided, summary will cover all available data from the beginning. |
| `company_benefit_id` | string | Yes | The UUID of the company benefit to retrieve summary data for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Tax Liabilities

**Slug:** `GUSTO_GET_TAX_LIABILITIES`

Tool to retrieve tax liabilities for a company's external payrolls. Use when you need to view tax liability selections, filing frequencies, and payment methods for external payroll processing.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Time Off Policy

**Slug:** `GUSTO_GET_TIME_OFF_POLICY`

Tool to retrieve a specific time off policy by UUID from Gusto. Use when you need to get detailed information about a time off policy including accrual rates, employee assignments, and policy configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `time_off_policy_id` | string | Yes | The UUID of the time off policy to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get time tracking time sheet

**Slug:** `GUSTO_GET_TIME_TRACKING_TIME_SHEET`

Tool to fetch a time sheet by UUID. Time sheets represent the time worked by an employee or contractor for a given time range with hours classified by pay classification (regular, overtime, or double overtime). Use when you need detailed information about a specific time sheet.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `time_sheet_uuid` | string | Yes | The UUID of the time sheet to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get token info

**Slug:** `GUSTO_GET_TOKEN_INFO`

Tool to retrieve scope and resource information associated with the current access token. Use when you need to verify token permissions or identify the authenticated user or company.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Work Address

**Slug:** `GUSTO_GET_WORK_ADDRESS`

Tool to retrieve an employee work address by UUID. Use when you need to get the work location details for an employee, including the address, effective date, and active status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `work_address_uuid` | string | Yes | The UUID of the work address to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Invite Signatory

**Slug:** `GUSTO_INVITE_SIGNATORY`

Tool to invite a signatory with minimal information. Use when you need to create a signatory who can be invited to provide more information and complete identity verification to sign documents.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | Yes | The email address of the signatory. |
| `title` | string | No | The title of the signatory. |
| `last_name` | string | No | The last name of the signatory. |
| `first_name` | string | No | The first name of the signatory. |
| `company_uuid` | string | Yes | The UUID of the company to invite the signatory for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List ACH Transactions

**Slug:** `GUSTO_LIST_ACH_TRANSACTIONS`

Tool to retrieve all ACH transactions for a company. Use when you need to view payment transactions, track payment statuses, or analyze financial movements for payroll and contractor payments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25. |
| `page` | integer | No | The page number to retrieve. When unspecified, will load all objects unless endpoint forces pagination. |
| `company_uuid` | string | Yes | The UUID of the company whose ACH transactions you want to retrieve. |
| `payroll_uuid` | string | No | Optional filter to get ACH transactions for a specific payroll. When provided, only ACH transactions for this payroll will be returned. |
| `transaction_type` | string | No | Optional filter to get ACH transactions with a specific transaction type. Example: "Credit employee pay". |
| `payment_direction` | string ("credit" | "debit") | No | Payment direction enumeration. |
| `contractor_payment_uuid` | string | No | Optional filter to get ACH transactions for a specific contractor payment. When provided, only ACH transactions for this contractor payment will be returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Company Attachments

**Slug:** `GUSTO_LIST_ATTACHMENTS`

Tool to retrieve a list of all attachments uploaded by a company. Use when you need to view or audit company documents and files. Requires the scope company_attachments:read.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company whose attachments to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Benefits

**Slug:** `GUSTO_LIST_BENEFITS`

Tool to retrieve all benefits supported by Gusto. Use when you need to discover available benefit types, their tax considerations, or determine which benefits can be created for companies.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Benefits Requirements

**Slug:** `GUSTO_LIST_BENEFITS_REQUIREMENTS`

Tool to retrieve field requirements for a specific benefit type. Use when you need to understand what fields are required, editable, or have specific constraints for enrolling employees in benefits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `benefit_id` | string | Yes | The benefit type ID in Gusto |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Company Custom Fields

**Slug:** `GUSTO_LIST_COMPANIE_CUSTOM_FIELDS`

Tool to retrieve the custom fields configured for a company. Use when you need to know the schema of custom fields at the company level.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25 |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `company_id` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Companies Time Off Requests

**Slug:** `GUSTO_LIST_COMPANIES_TIME_OFF_REQUESTS`

Tool to retrieve all time off requests for a company in Gusto. Use when you need to view pending, approved, denied, or cancelled time off requests submitted by employees.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company to retrieve time off requests for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Company Bank Accounts

**Slug:** `GUSTO_LIST_COMPANY_BANK_ACCOUNTS`

Tool to retrieve all bank accounts for a specific company. Currently, Gusto only supports a single default bank account per company. Use when you need to view company banking details for payroll processing.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company whose bank accounts you want to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Company Benefits

**Slug:** `GUSTO_LIST_COMPANY_BENEFITS`

Tool to retrieve all benefits offered by a company. Use when you need to list available company benefits, check benefit statuses, or see employee enrollment information. Company benefits represent the benefits that a company offers to employees and can be filtered by active status or benefit type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `active` | boolean | No | Filter benefits by active status. Set to true to retrieve only active benefits (available for employee participation), false for inactive benefits, or omit to retrieve all benefits regardless of status. |
| `company_id` | string | Yes | The UUID of the company to retrieve benefits for. This is a required identifier for the company whose benefits you want to list. |
| `benefit_type` | string | No | Filter benefits by benefit type ID(s). Provide a single benefit type ID or a comma-separated list of benefit type IDs to filter results. Example: '5' for a single type or '5,105' for multiple types. |
| `enrollment_count` | boolean | No | Include employee enrollment counts in the response. Set to true to return the number of employees enrolled in each benefit. When false or omitted, enrollment_count field will not be included in benefit objects. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Company Benefits Contribution Exclusions

**Slug:** `GUSTO_LIST_COMPANY_BENEFITS_CONTRIBUTION_EXCLUSIONS`

Tool to retrieve all contributions for a given company benefit and whether they are excluded or not. Use when you need to check which contribution types are excluded from a specific benefit. Currently only works for 401-k and Roth 401-k benefit types.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_benefit_id` | string | Yes | The UUID of the company benefit to retrieve contribution exclusions for. This is a required identifier for the company benefit whose contribution exclusions you want to list. Currently this endpoint only works for 401-k and Roth 401-k benefit types. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Company Benefits Employee Benefits

**Slug:** `GUSTO_LIST_COMPANY_BENEFITS_EMPLOYEE_BENEFITS`

Tool to retrieve all employee benefits for a specific company benefit. Use when you need to see which employees are enrolled in a particular company benefit and their enrollment details. Returns employee-specific benefit information including contribution amounts, deduction percentages, and coverage details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of employee benefits per page. For majority of endpoints will default to 25. Use this to control the page size when paginating results. |
| `page` | integer | No | The page number to retrieve. When unspecified, will load all objects unless endpoint forces pagination. Use this for paginated results. |
| `include` | string ("all_benefits") | No | Options for including additional data in the response. |
| `company_benefit_id` | string | Yes | The UUID of the company benefit to retrieve employee benefits for. This is a required identifier for the company benefit whose employee enrollments you want to list. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Company Forms

**Slug:** `GUSTO_LIST_COMPANY_FORMS`

Tool to get a list of all company's forms. Use when you need to retrieve all forms associated with a specific company, including tax forms and other company documents.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort_by` | string | No | Sort company forms. Options: name, year, quarter, draft, document_content_type, created_at (optionally with :asc or :desc suffix) |
| `company_id` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Contractor Documents

**Slug:** `GUSTO_LIST_CONTRACTOR_DOCUMENTS`

Tool to get all documents for a specific contractor in Gusto. Use when you need to retrieve contractor documents including tax forms, agreements, and other signed or unsigned documents with their details and status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `contractor_uuid` | string | Yes | The UUID of the contractor whose documents you want to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Contractor Forms

**Slug:** `GUSTO_LIST_CONTRACTOR_FORMS`

Tool to get a list of all contractor's forms. Use when you need to retrieve all forms associated with a specific contractor, including tax forms and other contractor documents.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `contractor_uuid` | string | Yes | The UUID of the contractor whose forms you want to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List contractor onboarding status

**Slug:** `GUSTO_LIST_CONTRACTOR_ONBOARDING_STATUS`

Tool to retrieve a contractor's onboarding status from Gusto. Use when you need to check contractor onboarding progress and view completion status of required onboarding steps.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `contractor_uuid` | string | Yes | The UUID of the contractor to retrieve onboarding status for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Contractor Payment Details

**Slug:** `GUSTO_LIST_CONTRACTOR_PAYMENT_DETAILS`

Tool to get payment details for contractors in a company, including their payment methods and bank account details for direct deposit. Use when you need to retrieve contractor payment information such as bank routing numbers, account details, or payment split configurations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. |
| `contractor_uuid` | string | No | Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. |
| `contractor_payment_group_uuid` | string | No | Optional filter to get payment details for contractors in a specific payment group. When provided, the response will only include payment details for contractors in this group. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Contractor Payment Method

**Slug:** `GUSTO_LIST_CONTRACTOR_PAYMENT_METHOD`

Tool to fetch a contractor's payment method configuration. Use when you need to retrieve how contractor payments are split across bank accounts or if they are paid by check.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `contractor_uuid` | string | Yes | The UUID of the contractor whose payment method you want to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Contractors

**Slug:** `GUSTO_LIST_CONTRACTORS`

Tool to get all contractors for a company including individuals and businesses. Use when you need to retrieve contractor information, filter by onboarding or termination status, or search for specific contractors by name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of contractors per page. For majority of endpoints will default to 25. Use with page parameter for pagination. |
| `page` | integer | No | The page number to retrieve. When unspecified, will load all contractors unless endpoint forces pagination. Use for paginated results. |
| `sort_by` | string ("type" | "onboarding_status" | "name" | "created_at") | No | Sort options for contractors |
| `onboarded` | boolean | No | Filters contractors by those who have completed onboarding. Set to true to get only onboarded contractors, false for non-onboarded. |
| `terminated` | boolean | No | Filters contractors by those who have been or are scheduled to be dismissed. Set to true to include terminated contractors. |
| `search_term` | string | No | A string to search for in the contractor's names. Filters contractors by partial name match. |
| `company_uuid` | string | Yes | The UUID of the company whose contractors you want to retrieve |
| `onboarded_active` | boolean | No | Filters contractors who are ready to work (onboarded AND active today). Set to true to get only contractors who are fully onboarded and currently active. |
| `terminated_today` | boolean | No | Filters contractors by those who have been dismissed and whose dismissal is in effect today. Excludes active and scheduled to be dismissed contractors. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Employee Custom Fields

**Slug:** `GUSTO_LIST_EMPLOYEE_CUSTOM_FIELDS`

Tool to retrieve the custom fields configured for an employee. Use when you need to get the custom field values for a specific employee.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25 |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `employee_id` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Employee Forms

**Slug:** `GUSTO_LIST_EMPLOYEE_FORMS`

Tool to get a list of all employee's forms. Use when you need to retrieve all forms associated with a specific employee, including tax forms and other employee documents.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Employee Home Addresses

**Slug:** `GUSTO_LIST_EMPLOYEE_HOME_ADDRESSES`

Tool to get an employee's home addresses. The home address is used to determine certain tax information and supports effective dating and courtesy withholding. Use when you need to retrieve address information for tax purposes or employee records.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List employee onboarding status

**Slug:** `GUSTO_LIST_EMPLOYEE_ONBOARDING_STATUS`

Tool to retrieve an employee's onboarding status from Gusto. Use when you need to check the onboarding progress and completion status of required steps for a specific employee.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee to retrieve onboarding status for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Employees

**Slug:** `GUSTO_LIST_EMPLOYEES`

Tool to get all employees for a given company including onboarding, active, and terminated employees. Use when you need to retrieve employee information for a specific company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25 |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `uuids` | array | No | Optional subset of employees to fetch. |
| `include` | array | No | Include the requested attribute(s) in each employee response. Multiple options are comma separated. |
| `sort_by` | string | No | Sort employees by field. Cannot be used with search_term. Options: created_at, name, onboarding_status |
| `onboarded` | boolean | No | Filters employees by those who have completed onboarding |
| `company_id` | string | Yes | The UUID of the company |
| `terminated` | boolean | No | Filters employees by those who have been or are scheduled to be terminated |
| `search_term` | string | No | A string to search for in the object's names |
| `payroll_uuid` | string | No | Filter employees by a specific payroll |
| `location_uuid` | string | No | Filter employees by a specific primary work location |
| `onboarded_active` | boolean | No | Filters employees who are ready to work (onboarded AND active today) |
| `terminated_today` | boolean | No | Filters employees by those who have been terminated and whose termination is in effect today (excludes active and scheduled to be terminated) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Employee Work Addresses

**Slug:** `GUSTO_LIST_EMPLOYEE_WORK_ADDRESSES`

Tool to get all work addresses for a specific employee. Use when you need to retrieve address information for all work locations associated with an employee, including historical and active addresses.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Employment History

**Slug:** `GUSTO_LIST_EMPLOYMENT_HISTORY`

Tool to retrieve employment history for a given employee, including terminations and rehires. Use when you need to view the complete work history for a specific employee.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Child Support Agencies

**Slug:** `GUSTO_LIST_GARNISHMENTS_CHILD_SUPPORT`

Tool to retrieve child support agency data including FIPS codes, payment requirements, and required attributes for each state. Use when you need to lookup agency-specific requirements before creating a child support garnishment.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Information Requests

**Slug:** `GUSTO_LIST_INFORMATION_REQUESTS`

Tool to fetch all information requests for a company in Gusto. Use when you need to retrieve pending, under review, or approved information requests that may be blocking payroll.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List job compensations

**Slug:** `GUSTO_LIST_JOBS_COMPENSATIONS`

Tool to retrieve all compensations for a specific job in Gusto. Use when you need information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. By default returns only the current compensation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25. |
| `page` | integer | No | The page number to retrieve. When unspecified, will load all objects unless endpoint forces pagination. |
| `job_id` | string | Yes | The UUID of the job whose compensations you want to retrieve. |
| `include` | string ("all_compensations") | No | Options for additional data to include in the response. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List migration readiness

**Slug:** `GUSTO_LIST_MIGRATION_READINESS`

Tool to check if a Gusto company is ready to be migrated to embedded payroll. Returns blockers and warnings for migration. Use this before attempting to migrate a company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company to check migration readiness for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Minimum Wages

**Slug:** `GUSTO_LIST_MINIMUM_WAGES`

Tool to get minimum wages for a specific location. Use when you need to retrieve minimum wage information for a location, optionally filtered by effective date.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `location_id` | string | Yes | The UUID of the location |
| `effective_date` | string | No | Filter minimum wages by effective date. Format: YYYY-MM-DD |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Notifications

**Slug:** `GUSTO_LIST_NOTIFICATIONS`

Tool to retrieve all notifications relevant for a company. Returns notifications that can be filtered by status (open, expired, resolved). Use when you need to check pending actions, critical alerts, or payroll blockers for a company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25 |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `status` | string ("open" | "expired" | "resolved") | No | Status of notification |
| `company_uuid` | string | Yes | The UUID of the company for which you would like to return notifications |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Paid Holidays

**Slug:** `GUSTO_LIST_PAID_HOLIDAYS`

Tool to retrieve a company's paid holidays from Gusto. Use when you need to preview the paid holidays for a company based on their holiday pay policy.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `year` | string | No | If a year is passed, paid holidays for that year will be returned. Otherwise, paid holidays for the next three years will be returned. |
| `company_uuid` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Employee Payment Details

**Slug:** `GUSTO_LIST_PAYMENT_DETAILS`

Tool to fetch payment details for employees in a company including payment methods and bank account details. Use when you need to retrieve employee payment information such as bank routing numbers, account details, or payment split configurations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25 |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `company_id` | string | Yes | The UUID of the company |
| `payroll_uuid` | string | No | The UUID of a specific payroll to fetch payment details for employees on that payroll. |
| `employee_uuid` | string | No | The UUID of a specific employee to fetch payment details for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Pay Periods

**Slug:** `GUSTO_LIST_PAY_PERIODS`

Tool to retrieve pay periods for a company. Pay periods are the foundation of payroll and are used for compensation, time & attendance, taxes, and expense reports. Use when you need to get pay period information for submitting payroll data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `end_date` | string | No | The end date for filtering pay periods. Format: YYYY-MM-DD. If not provided, defaults to today's date. |
| `company_id` | string | Yes | The UUID of the company to retrieve pay periods for. |
| `start_date` | string | No | The start date for filtering pay periods. Format: YYYY-MM-DD. If not provided, defaults to 6 months ago. |
| `payroll_types` | string | No | Filter by payroll types: 'regular' and/or 'transition'. Multiple options are comma-separated (e.g., 'regular,transition'). If not provided, defaults to regular pay periods only. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Payroll Blockers

**Slug:** `GUSTO_LIST_PAYROLL_BLOCKERS`

Tool to retrieve all payroll blockers for a company. Returns reasons that prevent the company from running payrolls, or an empty list if no blockers exist. Use when you need to check if a company can run payroll or identify issues that need to be resolved before payroll processing.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company to retrieve payroll blockers for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Payroll Reversals

**Slug:** `GUSTO_LIST_PAYROLL_REVERSALS`

Tool to retrieve all approved payroll reversals for a company. Use when you need to view reversals that have been applied to previous payroll runs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25. |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `company_id` | string | Yes | The UUID of the company to retrieve payroll reversals for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List pay schedules

**Slug:** `GUSTO_LIST_PAY_SCHEDULES`

Tool to retrieve all pay schedules for a company. Use when you need to get information about when employees work and when they should be paid for a specific company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25. |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `company_id` | string | Yes | The UUID of the company to retrieve pay schedules for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List pay schedules assignments

**Slug:** `GUSTO_LIST_PAY_SCHEDULES_ASSIGNMENTS`

Tool to retrieve the current pay schedule assignment for a company, including pay schedules and employee/department mappings. Use when you need to understand how pay schedules are assigned to employees and departments in a company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company to retrieve pay schedule assignments for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List pay schedules preview

**Slug:** `GUSTO_LIST_PAY_SCHEDULES_PREVIEW`

Tool to preview pay schedule dates with specified parameters for the next 18 months. Use when you need to see upcoming pay dates, pay periods, and bank holidays for a proposed pay schedule configuration before creating it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `day_1` | integer | No | An integer between 1 and 31 indicating the first day of the month that employees are paid. This field is only relevant for pay schedules with the 'Twice per month' and 'Monthly' frequencies. It will be null for pay schedules with other frequencies. |
| `day_2` | integer | No | An integer between 1 and 31 indicating the second day of the month that employees are paid. This field is the second pay date for pay schedules with the 'Twice per month' frequency. For semi-monthly pay schedules, set this field to 31. For months shorter than 31 days, we will set the second pay date to the last day of the month. It will be null for pay schedules with other frequencies. |
| `frequency` | string ("Every week" | "Every other week" | "Twice per month" | "Monthly") | Yes | The frequency that employees on this pay schedule are paid with Gusto. |
| `company_id` | string | Yes | The UUID of the company to preview pay schedules for. |
| `anchor_pay_date` | string | Yes | The first date that employees on this pay schedule are paid with Gusto. Format: YYYY-MM-DD |
| `anchor_end_of_pay_period` | string | Yes | The last date of the first pay period. This can be the same date as the anchor pay date. Format: YYYY-MM-DD |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Pay Stubs

**Slug:** `GUSTO_LIST_PAY_STUBS`

Tool to get an employee's pay stubs including payment details and amounts. Use when you need to retrieve pay stub information for a specific employee.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25 |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `employee_id` | string | Yes | The UUID of the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Recovery Cases

**Slug:** `GUSTO_LIST_RECOVERY_CASES`

Tool to fetch all recovery cases for a company. Use when you need to retrieve recovery case information including status, outstanding amounts, and associated payroll or contractor payment details. Recovery cases track failed ACH transactions that require recovery.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company to retrieve recovery cases for. This is a required identifier for the company whose recovery cases you want to list. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Signatories

**Slug:** `GUSTO_LIST_SIGNATORIES`

Tool to retrieve all company signatories. Use when you need to get signatory information for signing company forms and documents. Currently only a single signatory per company is supported.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Tax Requirements

**Slug:** `GUSTO_LIST_TAX_REQUIREMENTS`

Tool to retrieve all tax requirement states for a company. Use when you need to check which states have tax requirements and whether the company has completed setup for each state during onboarding.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company to retrieve tax requirements for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Time Off Activities

**Slug:** `GUSTO_LIST_TIME_OFF_ACTIVITIES`

Tool to get employee time off activities for a specific time off type. Use when you need to view an employee's time off balance changes, accruals, and usage history.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_uuid` | string | Yes | The UUID of the employee |
| `time_off_type` | string ("vacation" | "sick") | Yes | The time off type name you want to query data for |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Time Off Policies

**Slug:** `GUSTO_LIST_TIME_OFF_POLICIES`

Tool to retrieve all time off policies for a company. Use when you need to list available time off policies, check policy configurations, or see which employees are assigned to each policy.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company to retrieve time off policies for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Time Tracking Time Sheets

**Slug:** `GUSTO_LIST_TIME_TRACKING_TIME_SHEETS`

Tool to fetch all company's time sheets representing time worked by employees or contractors. Use when you need to retrieve time tracking data including regular, overtime, and double overtime hours for a given time range.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | integer | No | Number of objects per page. For majority of endpoints will default to 25 |
| `page` | integer | No | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. |
| `company_id` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List unprocessed termination pay periods

**Slug:** `GUSTO_LIST_UNPROCESSED_TERMINATION_PAY_PERIODS`

Tool to retrieve unprocessed termination pay periods for a company. Use when you need to view dismissal payrolls for past and future terminated employees.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Wire In Requests

**Slug:** `GUSTO_LIST_WIRE_IN_REQUESTS`

Tool to retrieve all Wire In Requests for a company. Use when you need to view wire transfer requests, track payment statuses, or manage incoming wire transfers for payroll and contractor payments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_uuid` | string | Yes | The UUID of the company whose wire in requests you want to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List YTD Benefit Amounts From Different Company

**Slug:** `GUSTO_LIST_YTD_BENEFIT_AMOUNTS_FROM_DIFFERENT_COMPANY`

Tool to retrieve year-to-date benefit amounts contributed at a different company for an employee. Returns benefit amounts for the requested tax year (defaults to current year if not specified). This endpoint only supports retrieving outside contributions for 401(k) benefits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tax_year` | integer | No | The tax year for which to retrieve YTD benefit amounts. Defaults to current year if not specified. |
| `employee_id` | string | Yes | The UUID of the employee for whom to retrieve YTD benefit amounts from a different company. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove Employees from Holiday Pay Policy

**Slug:** `GUSTO_REMOVE_HOLIDAY_PAY_POLICY_EMPLOYEES`

Tool to remove employees from a company's holiday pay policy in Gusto. Use when you need to exclude specific employees from the holiday pay policy scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `version` | string | Yes | The current version of the holiday pay policy object for optimistic locking. See the versioning guide for information on how to use this field. |
| `employees` | array | Yes | List of employee UUIDs to remove from the holiday pay policy scope |
| `company_id` | string | Yes | The UUID of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove People From Department

**Slug:** `GUSTO_REMOVE_PEOPLE_FROM_DEPARTMENT`

Tool to remove employees and contractors from a department in Gusto. Use when you need to unassign people from a department.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `version` | string | Yes | The current version of the department object. See the versioning guide for information on how to use this field. |
| `employees` | array | No | Array of employees to remove from the department. Each employee is identified by their UUID. |
| `contractors` | array | No | Array of contractors to remove from the department. Each contractor is identified by their UUID. |
| `department_uuid` | string | Yes | The UUID of the department to remove people from |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove Employees from Time Off Policy

**Slug:** `GUSTO_REMOVE_TIME_OFF_POLICY_EMPLOYEES`

Tool to remove employees from a time off policy in Gusto. Use when you need to exclude specific employees from a vacation or sick leave policy scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employees` | array | Yes | List of employees to remove from the time off policy scope. Each employee object must contain a uuid field. |
| `time_off_policy_id` | string | Yes | The UUID of the time off policy |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Terms of Service Status

**Slug:** `GUSTO_RETRIEVE_TERMS_OF_SERVICE_STATUS`

Tool to retrieve the user acceptance status of Gusto Embedded Payroll's Terms of Service. Use when you need to check if a specific user has accepted the latest terms of service for a company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | Yes | The user's email address on Gusto. You can retrieve the user's email via company's /admins, /employees, /signatories, and /contractors endpoints. |
| `company_uuid` | string | Yes | The UUID of the company. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Company

**Slug:** `GUSTO_UPDATE_COMPANY`

Tool to update a company in Gusto. Use when you need to change company settings, particularly the contractor_only flag to enable W-2 employee support.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | The UUID of the company to update |
| `contractor_only` | boolean | Yes | Whether the company only supports contractors. Must be updated in order for the company to start supporting W-2 employees. Can only be updated from true to false. Note that updating this value will require additional onboarding steps to be completed in order for the company to support W-2 employees. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Company Benefit Contribution Exclusions

**Slug:** `GUSTO_UPDATE_COMPANY_BENEFIT_CONTRIBUTION_EXCLUSIONS`

Tool to update contribution exclusions for a company benefit in Gusto. Use when you need to specify which contribution types should be excluded from a specific benefit. Currently only works for 401-k and Roth 401-k benefit types.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_benefit_id` | string | Yes | The UUID of the company benefit to update contribution exclusions for. Currently this endpoint only works for 401-k and Roth 401-k benefit types. |
| `contribution_exclusions` | array | Yes | The list of contribution exclusions to update. Each entry specifies a contribution type and whether it should be excluded from the benefit. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Company Benefit

**Slug:** `GUSTO_UPDATE_COMPANY_BENEFITS`

Tool to update an existing company benefit in Gusto. Use when you need to modify benefit details such as description, active status, or other attributes. Note that company benefits can be deactivated only when no employees are enrolled.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `active` | boolean | No | Whether this benefit is active for employee participation. Company benefits may only be deactivated if no employees are actively participating. |
| `version` | string | Yes | The current version of the object. See the versioning guide for information on how to use this field. This is required for optimistic concurrency control. |
| `description` | string | No | The description of the company benefit. For example, a company may offer multiple benefits with an ID of 1 (for Medical Insurance). The description would show something more specific like 'Kaiser Permanente' or 'Blue Cross/Blue Shield'. |
| `catch_up_type` | string ("elective" | "deemed") | No | Catch-up contribution type for 401(k) and 403(b) benefits |
| `company_benefit_id` | string | Yes | The UUID of the company benefit to update |
| `responsible_for_employee_w2` | boolean | No | Whether the employer is subject to file W-2 forms for an employee on leave. Only applicable to short-term and long-term disability benefits (different from voluntary disability). |
| `responsible_for_employer_taxes` | boolean | No | Whether the employer is subject to pay employer taxes when an employee is on leave. Only applicable to short-term and long-term disability benefits (different from voluntary disability). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Contractor Address

**Slug:** `GUSTO_UPDATE_CONTRACTOR_ADDRESS`

Tool to create or update a contractor's address in Gusto. Use when you need to set or modify the home address information for an existing contractor. Requires the contractor's UUID and the current version for optimistic locking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip` | string | No | The ZIP code of the contractor's address. |
| `city` | string | No | The city of the contractor's address. |
| `state` | string | No | The state of the contractor's address. Use two-letter state codes. |
| `version` | string | Yes | The current version of the object. Required for optimistic locking to prevent concurrent updates. See the versioning guide for information on how to use this field. |
| `street_1` | string | No | The first line of the contractor's address (street address). |
| `street_2` | string | No | The second line of the contractor's address (apartment, suite, etc.). This field is optional. |
| `contractor_uuid` | string | Yes | The UUID of the contractor whose address is being updated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Contractor Payment Method

**Slug:** `GUSTO_UPDATE_CONTRACTOR_PAYMENT_METHOD`

Tool to update a contractor's payment method in Gusto. Use when you need to change how a contractor receives payments (Check or Direct Deposit). For Direct Deposit, you'll need to configure bank account splits separately.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `type` | string ("Check" | "Direct Deposit") | Yes | The payment method type. If type is Check, then split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. |
| `version` | string | Yes | The current version of the object. Required for optimistic locking to prevent concurrent updates. See the versioning guide for information on how to use this field. |
| `contractor_uuid` | string | Yes | The UUID of the contractor whose payment method is being updated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Department

**Slug:** `GUSTO_UPDATE_DEPARTMENT`

Tool to update a department in Gusto. Use when you need to modify department details like the title. Requires the current version for optimistic locking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | No | The title/name of the department |
| `version` | string | Yes | The current version of the object. See the versioning guide for information on how to use this field. |
| `department_uuid` | string | Yes | The UUID of the department to update |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Earning Type

**Slug:** `GUSTO_UPDATE_EARNING_TYPE`

Tool to update an earning type in Gusto. Use when you need to modify the name of a custom earning type for a company.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the custom earning type. |
| `company_id` | string | Yes | The UUID of the company. |
| `earning_type_id` | string | Yes | The UUID of the earning type to update. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Employee

**Slug:** `GUSTO_UPDATE_EMPLOYEE`

Tool to update an employee in Gusto. Use when you need to modify employee information such as name, email, SSN, or shareholder status. Requires the current version field for idempotency.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ssn` | string | No | Social Security Number of the employee (9 digits, no dashes) |
| `email` | string | No | The employee's personal email address. This is provided to support syncing users between systems. You may not use this email address for any other purpose (e.g. marketing) |
| `version` | string | Yes | The current version of the employee. See the versioning guide for information on how to use this field for idempotency |
| `last_name` | string | No | Last name of the employee |
| `first_name` | string | No | First name of the employee |
| `work_email` | string | No | The employee's work email address. This is provided to support syncing users between systems. You may not use this email address for any other purpose (e.g. marketing) |
| `employee_id` | string | Yes | The UUID of the employee to update |
| `date_of_birth` | string | No | Date of birth of the employee in YYYY-MM-DD format |
| `middle_initial` | string | No | Middle initial of the employee |
| `preferred_first_name` | string | No | Preferred first name of the employee |
| `two_percent_shareholder` | boolean | No | Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Employee Bank Account

**Slug:** `GUSTO_UPDATE_EMPLOYEE_BANK_ACCOUNT`

Tool to update an employee bank account in Gusto. Use when you need to modify existing employee bank account details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name for the bank account |
| `employee_id` | string | Yes | The UUID of the employee |
| `account_type` | string ("Checking" | "Savings") | Yes | The bank account type. Must be either 'Checking' or 'Savings' |
| `account_number` | string | Yes | The bank account number |
| `routing_number` | string | Yes | The bank account's routing number |
| `bank_account_uuid` | string | Yes | The UUID of the bank account to update |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Employee Benefit

**Slug:** `GUSTO_UPDATE_EMPLOYEE_BENEFIT`

Tool to update an individual employee benefit by its UUID in Gusto. Use when you need to modify benefit details like deduction amounts, company contributions, coverage, or dates for a specific employee's benefit enrollment. Requires the benefit UUID and version for optimistic locking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `active` | boolean | No | Whether the employee benefit is active. |
| `version` | string | Yes | The current version of the object. Required for optimistic locking to prevent concurrent updates. See the versioning guide for information on how to use this field. |
| `catch_up` | boolean | No | Whether the employee should use a benefit's 'catch up' rate. Only Roth 401k and 401k benefits use this value for employees over 50. |
| `elective` | boolean | No | Whether the company contribution is elective (aka 'matching'). For 'tiered', 'elective_amount', and 'elective_percentage' contribution types this is ignored and assumed to be true. |
| `contribution` | object | No | Contribution configuration object. |
| `limit_option` | string ("Family" | "Individual" | "Joint Filing or Single" | "Married and Filing Separately") | No | Benefit limit options for HSA and Dependent Care FSA. |
| `effective_date` | string | No | The date the employee benefit will start, in YYYY-MM-DD format. |
| `coverage_amount` | string | No | The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set. |
| `expiration_date` | string | No | The date the employee benefit will expire, in YYYY-MM-DD format. A null value indicates the benefit will not expire. |
| `employee_deduction` | string | No | The amount to be deducted, per pay period, from the employee's pay. |
| `employee_benefit_id` | string | Yes | The UUID of the employee benefit to update. |
| `company_contribution` | string | No | The amount to be paid, per pay period, by the company. |
| `deduct_as_percentage` | boolean | No | Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. |
| `contribute_as_percentage` | boolean | No | Whether the company contribution amount should be treated as a percentage to be deducted from each payroll. |
| `coverage_salary_multiplier` | string | No | The coverage amount as a multiple of the employee's salary. Only applicable for Group Term Life benefits. Note: cannot be set if coverage amount is also set. |
| `deduction_reduces_taxable_income` | string ("unset" | "reduces_taxable_income" | "does_not_reduce_taxable_income") | No | Options for deduction tax impact. |
| `employee_deduction_annual_maximum` | string | No | The maximum employee deduction amount per year. A null value signifies no limit. |
| `company_contribution_annual_maximum` | string | No | The maximum company contribution amount per year. A null value signifies no limit. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Employee Benefits

**Slug:** `GUSTO_UPDATE_EMPLOYEE_BENEFITS`

Tool to bulk update or create employee benefits for a company benefit in Gusto. Use when you need to enroll employees in a benefit plan or modify existing enrollments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_benefits` | array | Yes | List of employee benefits to create or update. Each entry must include employee_uuid and may include action ('create' or 'update'). |
| `company_benefit_id` | string | Yes | The UUID of the company benefit for which employee benefits are being updated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Employee Onboarding Status

**Slug:** `GUSTO_UPDATE_EMPLOYEE_ONBOARDING_STATUS`

Tool to update the onboarding status of an employee in Gusto. Use when you need to change an employee's progress through the onboarding process. Note that invalid status transitions will return a 422 error.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee |
| `onboarding_status` | string ("admin_onboarding_incomplete" | "self_onboarding_pending_invite" | "self_onboarding_invited" | "self_onboarding_invited_started" | "self_onboarding_invited_overdue" | "self_onboarding_completed_by_employee" | "self_onboarding_awaiting_admin_review" | "onboarding_completed") | Yes | The new onboarding status to set for the employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Employee Payment Method

**Slug:** `GUSTO_UPDATE_EMPLOYEE_PAYMENT_METHOD`

Tool to update an employee's payment method in Gusto. Use when you need to change how an employee receives payments (Check or Direct Deposit). For Direct Deposit, you must also specify split_by and splits to configure bank account distribution.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `type` | string ("Check" | "Direct Deposit") | Yes | The payment method type. If type is Check, then split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. |
| `splits` | array | No | The list of bank account splits for Direct Deposit payments. Required if type is Direct Deposit. Each split defines how much of the payment goes to which bank account. |
| `version` | string | Yes | The current version of the object. Required for optimistic locking to prevent concurrent updates. See the versioning guide for information on how to use this field. |
| `split_by` | string ("Amount" | "Percentage") | No | Describes how the payment will be split |
| `employee_id` | string | Yes | The UUID of the employee whose payment method is being updated |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Employee Rehire

**Slug:** `GUSTO_UPDATE_EMPLOYEE_REHIRE`

Tool to update an employee rehire in Gusto. Use when you need to modify the details of a pending rehire for a terminated employee.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `version` | string | Yes | The current version of the object. See the versioning guide for information on how to use this field for optimistic locking. |
| `employee_id` | string | Yes | The UUID of the employee |
| `effective_date` | string | Yes | The day when the employee returns to work in YYYY-MM-DD format |
| `employment_status` | string ("part_time" | "full_time" | "part_time_eligible" | "variable" | "seasonal" | "not_set") | No | The employee's employment status. |
| `work_location_uuid` | string | Yes | The UUID of the employee's work location |
| `file_new_hire_report` | boolean | Yes | The boolean flag indicating whether Gusto will file a new hire report for the employee |
| `two_percent_shareholder` | boolean | No | Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Employee Termination

**Slug:** `GUSTO_UPDATE_EMPLOYEE_TERMINATION`

Tool to update an existing employee termination in Gusto. Use when you need to modify the effective date or payroll settings for a scheduled termination. Requires the current version for optimistic locking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `version` | string | Yes | The current version of the termination object. Required for optimistic locking to prevent concurrent updates. See the versioning guide for information on how to use this field. |
| `employee_id` | string | Yes | The UUID of the employee whose termination to update |
| `effective_date` | string | Yes | The employee's last day of work in YYYY-MM-DD format |
| `run_termination_payroll` | boolean | No | If true, the employee should receive their final wages via an off-cycle payroll. If false, they should receive their final wages on their current pay schedule |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Federal Tax Details

**Slug:** `GUSTO_UPDATE_FEDERAL_TAX_DETAILS`

Tool to update federal tax details for a company in Gusto. Use when you need to update attributes relevant for federal taxes such as EIN, filing form, legal name, tax payer type, or S-Corporation election.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ein` | string | No | The EIN (Employer Identification Number) of the company. |
| `version` | string | Yes | The current version of the object. Required for optimistic locking. See the versioning guide for information on how to use this field. |
| `company_id` | string | Yes | The UUID of the company whose federal tax details are being updated. |
| `legal_name` | string | No | The legal name of the company. |
| `filing_form` | string ("941" | "944") | No | Federal tax filing form type. |
| `tax_payer_type` | string ("C-Corporation" | "S-Corporation" | "Sole proprietor" | "LLC" | "LLP" | "Limited partnership" | "Co-ownership" | "Association" | "Trusteeship" | "General partnership" | "Joint venture" | "Non-Profit") | No | Tax entity type for the company. |
| `taxable_as_scorp` | boolean | No | Whether this company should be taxed as an S-Corporation. Applicable for S-Corporation, C-Corporation, and LLC tax payer types. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Employee Federal Taxes

**Slug:** `GUSTO_UPDATE_FEDERAL_TAXES`

Tool to update federal tax information for an employee in Gusto. Use when you need to update W-4 form data including filing status, withholdings, and allowances. The response structure varies based on whether pre-2020 or 2020+ W-4 data is being updated.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `version` | string | Yes | The current version of the object. Required for optimistic locking to prevent concurrent updates. See the versioning guide for information on how to use this field. |
| `two_jobs` | boolean | No | Only applicable when w4_data_type is 'rev_2020_w4'. Whether the employee has multiple jobs or the spouse works. |
| `deductions` | string | No | Only applicable when w4_data_type is 'rev_2020_w4'. Deductions other than the standard deduction. |
| `other_income` | string | No | Only applicable when w4_data_type is 'rev_2020_w4'. Other income not from jobs (e.g., interest, dividends). |
| `w4_data_type` | string | Yes | The type of W-4 form data being submitted. Use 'pre_2020_w4' for pre-2020 W-4 forms or 'rev_2020_w4' for 2020 and later W-4 forms. |
| `employee_uuid` | string | Yes | The UUID of the employee whose federal taxes are being updated. |
| `filing_status` | string | Yes | The employee's federal tax filing status (e.g., 'Single', 'Married', 'Married_filing_separately', 'Head_of_household'). |
| `dependents_amount` | string | No | Only applicable when w4_data_type is 'rev_2020_w4'. The total amount for dependents claimed on the W-4. |
| `extra_withholding` | string | No | Only applicable when w4_data_type is 'rev_2020_w4'. Extra amount to withhold from each paycheck. |
| `additional_withholding` | string | No | Only applicable when w4_data_type is 'pre_2020_w4'. The additional amount to withhold from each paycheck. |
| `federal_withholding_allowance` | integer | No | Only applicable when w4_data_type is 'pre_2020_w4'. The number of federal withholding allowances claimed on the W-4. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Garnishment

**Slug:** `GUSTO_UPDATE_GARNISHMENT`

Tool to update an existing garnishment in Gusto. Use when you need to modify garnishment details such as amount, description, or child support information. Requires the garnishment UUID and the current version for optimistic locking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `times` | integer | No | The number of times to apply the garnishment. Ignored if recurring is true. |
| `active` | boolean | No | Whether or not this garnishment is currently active. Default is true. |
| `amount` | string | No | The amount of the garnishment. Either a percentage or a fixed dollar amount. Represented as a float, e.g. '8.00'. |
| `version` | string | Yes | The current version of the object. Required for optimistic locking to prevent concurrent updates. See the versioning guide for information on how to use this field. |
| `recurring` | boolean | No | Whether the garnishment should recur indefinitely. Default is false. |
| `description` | string | No | The description of the garnishment. |
| `total_amount` | string | No | A maximum total deduction for the lifetime of this garnishment. A null value indicates no maximum. Represented as a float. |
| `child_support` | object | No | Child support order details for garnishments. |
| `court_ordered` | boolean | No | Whether the garnishment is court ordered. |
| `annual_maximum` | string | No | The maximum deduction per annum. A null value indicates no maximum. Represented as a float, e.g. '200.00'. |
| `garnishment_id` | string | Yes | The UUID of the garnishment to update. |
| `pay_period_maximum` | string | No | The maximum deduction per pay period. A null value indicates no maximum. Represented as a float, e.g. '16.00'. |
| `deduct_as_percentage` | boolean | No | Whether the amount should be treated as a percentage to be deducted per pay period. Default is false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Historical Employee

**Slug:** `GUSTO_UPDATE_HISTORICAL_EMPLOYEE`

Tool to update a historical employee in Gusto. Historical employees are employees that were previously dismissed from the company in the current year. Use when you need to update information for a terminated employee.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ssn` | string | No | Social Security Number of the historical employee (9 digits, no dashes). |
| `email` | string | No | The personal email address of the historical employee. |
| `version` | string | Yes | The current version of the object. Required for optimistic locking to prevent concurrent update conflicts. |
| `last_name` | string | No | Last name of the historical employee. |
| `company_id` | string | Yes | The UUID of the company. |
| `first_name` | string | No | First name of the historical employee. |
| `date_of_birth` | string | No | Date of birth of the historical employee in YYYY-MM-DD format. |
| `middle_initial` | string | No | Middle initial of the historical employee. |
| `preferred_first_name` | string | No | Preferred first name of the historical employee. |
| `historical_employee_id` | string | Yes | The UUID of the historical employee to update. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Holiday Pay Policy

**Slug:** `GUSTO_UPDATE_HOLIDAY_PAY_POLICY`

Tool to update a company's holiday pay policy in Gusto. Use when you need to configure which federal holidays are included in the company's holiday pay policy.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `version` | string | Yes | The current version of the object. Required for optimistic locking to prevent concurrent updates. See the versioning guide for information on how to use this field. |
| `company_uuid` | string | Yes | The UUID of the company whose holiday pay policy is being updated. |
| `federal_holidays` | object | Yes | Configuration for the eleven supported federal holidays. Specify which holidays should be included in the company's holiday pay policy. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Home Address

**Slug:** `GUSTO_UPDATE_HOME_ADDRESS`

Tool to update an employee's home address in Gusto. Use when you need to change an employee's residential address details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip` | string | No | The ZIP code of the address |
| `city` | string | No | The city of the address |
| `state` | string | No | The state of the address (two-letter abbreviation) |
| `version` | string | Yes | The current version of the object. Required for optimistic locking. See the versioning guide for information on how to use this field. |
| `street_1` | string | No | The first line of the street address |
| `street_2` | string | No | The second line of the street address (e.g., apartment, suite) |
| `effective_date` | string | No | The date the employee started living at the address in YYYY-MM-DD format |
| `home_address_uuid` | string | Yes | The UUID of the home address to update |
| `courtesy_withholding` | boolean | No | Determines if home taxes should be withheld and paid for employee |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Company Industry Selection

**Slug:** `GUSTO_UPDATE_INDUSTRY_SELECTION`

Tool to update the industry classification for a company by providing a NAICS code. Use when you need to set or change a company's industry classification in Gusto's payroll system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | No | Industry title describing the company's business classification |
| `sic_codes` | array | No | List of Standard Industrial Classification (SIC) four-digit codes that categorize the company's business activities. If not provided, Gusto will perform an internal lookup using the naics_code |
| `company_id` | string | Yes | The UUID of the company whose industry classification to update |
| `naics_code` | string | Yes | North American Industry Classification System (NAICS) six-digit code that classifies the business based on its primary type of work |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Jobs

**Slug:** `GUSTO_UPDATE_JOBS`

Tool to update a job in Gusto. Use when you need to modify job details such as title, hire date, workers' compensation settings, or shareholder status. Requires the current version for optimistic locking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | No | The job title |
| `job_id` | string | Yes | The UUID of the job to update |
| `version` | string | Yes | The current version of the job object. See the versioning guide for information on how to use this field. This is required for optimistic locking to prevent concurrent updates. |
| `hire_date` | string | No | The date when the employee was hired or rehired for the job in YYYY-MM-DD format |
| `state_wc_covered` | boolean | No | Whether this job is eligible for workers' compensation coverage in the state of Washington (WA) |
| `state_wc_class_code` | string | No | The risk class code for workers' compensation in Washington state. Please visit Washington state's Risk Class page to learn more. |
| `two_percent_shareholder` | boolean | No | Whether the employee owns at least 2% of the company |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update location

**Slug:** `GUSTO_UPDATE_LOCATION`

Tool to update an existing location in Gusto. Use when you need to modify address details, phone number, or filing/mailing address status for a location. Requires the current version for optimistic locking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `zip` | string | No | ZIP code. Must be a valid US zip (e.g. 12345 or 12345-6789). |
| `city` | string | No | City name |
| `state` | string | No | State code (e.g. CA). Must be a valid two-letter state code. |
| `country` | string | No | Country code. Defaults to USA. |
| `version` | string | Yes | The current version of the location object. Required for optimistic locking to prevent concurrent updates. See the versioning guide for information on how to use this field. |
| `street_1` | string | No | Street address line 1 |
| `street_2` | string | No | Street address line 2 (optional) |
| `location_id` | string | Yes | The UUID of the location to update |
| `phone_number` | string | No | Phone number for the location. Must be exactly 10 digits (no spaces, dashes, or parentheses). |
| `filing_address` | boolean | No | Specify if this location is the company's filing address |
| `mailing_address` | boolean | No | Specify if this location is the company's mailing address |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Onboarding Documents Config

**Slug:** `GUSTO_UPDATE_ONBOARDING_DOCUMENTS_CONFIG`

Tool to update an employee's onboarding documents configuration in Gusto. Use when you need to indicate whether to include Form I-9 during employee onboarding.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_id` | string | Yes | The UUID of the employee |
| `i9_document` | boolean | Yes | Whether to include Form I-9 for this employee during onboarding. When true, the employee will be prompted to complete Form I-9 as part of their onboarding. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update pay schedule

**Slug:** `GUSTO_UPDATE_PAY_SCHEDULE`

Tool to update a pay schedule in Gusto. Use when you need to modify pay schedule settings such as custom name, anchor dates, frequency, or auto-payroll configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `day_1` | integer | No | An integer between 1 and 31 indicating the first day of the month that employees are paid. This field is only relevant for pay schedules with the 'Twice per month' and 'Monthly' frequencies. It will be null for pay schedules with other frequencies. |
| `day_2` | integer | No | An integer between 1 and 31 indicating the second day of the month that employees are paid. This field is the second pay date for pay schedules with the 'Twice per month' frequency. For semi-monthly pay schedules, set this field to 31. For months shorter than 31 days, the second pay date will be set to the last day of the month. It will be null for pay schedules with other frequencies. |
| `version` | string | Yes | The current version of the pay schedule object. Required for optimistic locking to prevent concurrent modifications. See the versioning guide for details. |
| `frequency` | string ("Every week" | "Every other week" | "Twice per month" | "Monthly") | No | The frequency that employees on this pay schedule are paid with Gusto. |
| `company_id` | string | Yes | The UUID of the company. |
| `custom_name` | string | No | A custom name for the pay schedule. |
| `auto_payroll` | boolean | No | With automatic payroll enabled, payroll will run automatically one day before your payroll deadlines. |
| `anchor_pay_date` | string | No | The first date that employees on this pay schedule are paid with Gusto in YYYY-MM-DD format. |
| `pay_schedule_id` | string | Yes | The UUID of the pay schedule to update. |
| `anchor_end_of_pay_period` | string | No | The last date of the first pay period in YYYY-MM-DD format. This can be the same date as the anchor pay date. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update recurring reimbursement

**Slug:** `GUSTO_UPDATE_RECURRING_REIMBURSEMENT`

Tool to update an existing recurring reimbursement in Gusto. Use when you need to modify the amount or description of a recurring reimbursement. Requires the current version for optimistic locking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The UUID of the recurring reimbursement to update |
| `amount` | number | No | The amount of the recurring reimbursement. Must be a positive number (e.g., 85.00). |
| `version` | string | Yes | The current version of the recurring reimbursement object. Required for optimistic locking to prevent concurrent updates. See the versioning guide for information on how to use this field. |
| `description` | string | No | Description of the recurring reimbursement. Use this field to provide details about what the reimbursement is for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Salary Estimate

**Slug:** `GUSTO_UPDATE_SALARY_ESTIMATE`

Tool to update a salary estimate for an S-Corp owner in Gusto. Use when you need to modify occupation details, location, or business revenue for salary calculations. Cannot update if the estimate has already been finalized.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `uuid` | string | Yes | The UUID of the salary estimate to update |
| `zip_code` | string | Yes | The ZIP code for location-based salary calculations (5 digits) |
| `occupations` | array | Yes | Array of occupations with experience levels and time allocations. Time percentages must sum to 100% (1.0) |
| `annual_net_revenue` | number | No | The annual net revenue of the business in dollars (must be greater than 0 if provided) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Section 603 High Earner Status

**Slug:** `GUSTO_UPDATE_SECTION603_HIGH_EARNER_STATUS`

Tool to update an employee's Section 603 high earner status for a specific year. Use when you need to set or modify whether an employee is classified as a high earner under Section 603 of the SECURE 2.0 Act, which affects their retirement contribution tax treatment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employee_uuid` | string | Yes | The UUID of the employee whose Section 603 high earner status is being updated. |
| `effective_year` | integer | Yes | The effective year for the Section 603 high earner status. Must be a valid year (e.g., 2026). |
| `is_high_earner` | boolean | Yes | Whether the employee is classified as a high earner for Section 603 purposes. Section 603 of the SECURE 2.0 Act requires employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold to have their catch-up contributions to pre-tax retirement benefits designated as post-tax contributions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update State Taxes

**Slug:** `GUSTO_UPDATE_STATE_TAXES`

Tool to update state tax attributes for an employee in Gusto. Use when you need to update state-specific tax information such as withholding exemptions or additional withholding amounts. Answers must be supplied in effective-dated format with valid_from='2010-01-01' and valid_up_to=null.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `states` | array | Yes | List of states with their tax information to update. Each state contains answers to tax questions. |
| `employee_uuid` | string | Yes | The UUID of the employee whose state taxes are being updated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update State Tax Requirements

**Slug:** `GUSTO_UPDATE_STATE_TAX_REQUIREMENTS`

Tool to update state tax requirements for a company in Gusto. Use when you need to update state-specific tax settings such as tax rates, unemployment insurance rates, or other state tax compliance requirements.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `state` | string | Yes | 2-letter US state abbreviation for the state tax requirements to update. |
| `company_uuid` | string | Yes | The UUID of the company whose state tax requirements are being updated. |
| `requirement_sets` | array | Yes | List of requirement sets to update. Each set contains tax requirements for a specific category (e.g., tax rates, unemployment insurance). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update time off policy balance

**Slug:** `GUSTO_UPDATE_TIME_OFF_POLICIES_BALANCE`

Tool to update time off hours balances for employees under a time off policy. Use when you need to set or adjust employee vacation or sick leave balances for a specific policy. Requires the time_off_policies:write scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `employees` | array | Yes | List of employees with their new balance values. Each entry specifies an employee UUID and their new balance in hours. |
| `time_off_policy_id` | string | Yes | The UUID of the time off policy to update balances for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Time Off Policy

**Slug:** `GUSTO_UPDATE_TIME_OFF_POLICY`

Tool to update a time off policy in Gusto. Use when you need to modify vacation or sick leave policy settings such as accrual rates, limits, carryover rules, or termination payout configuration. Requires the policy version for optimistic locking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Name of the time off policy. Update this to change the policy name (e.g., 'Updated Vacation Policy', 'Sick Leave'). |
| `version` | string | Yes | The current version of the time off policy object. This field is required for optimistic locking to prevent concurrent updates. See the versioning guide for information on how to use this field. Get the current version by first retrieving the policy details. |
| `complete` | boolean | No | Boolean representing if a policy has completed configuration. Set to true when the policy setup is complete and ready to be activated. |
| `max_hours` | string | No | The max number of hours an employee can accrue total. Represented as a float string (e.g., '160.0', '240.0'). |
| `policy_type` | string ("vacation" | "sick") | No | Time off policy type. |
| `accrual_rate` | string | No | The rate at which the time off hours will accrue for an employee on the policy. Represented as a float string (e.g., '0.05', '40.0'). Required for hourly accrual methods. |
| `accrual_method` | string ("per_hour_worked" | "per_hour_paid" | "per_hour_worked_no_overtime" | "per_hour_paid_no_overtime" | "per_pay_period" | "per_year") | No | Policy time off accrual method. |
| `accrual_rate_unit` | string | No | The number of hours an employee has to work or be paid for to accrue the number of hours set in the accrual rate. Only used for hourly policies (per_hour_paid, per_hour_paid_no_overtime, per_hour_work, per_hour_worked_no_overtime). Represented as a float string (e.g., '1.0', '40.0'). |
| `policy_reset_date` | string | No | The date the policy resets. Format MM-DD (e.g., '01-01' for January 1st, '07-01' for July 1st). |
| `time_off_policy_uuid` | string | Yes | The UUID of the time off policy to update. This is the unique identifier for the time off policy in Gusto (e.g., '45635f6a-e78b-4641-86b4-d7bce9b20cb2'). |
| `carryover_limit_hours` | string | No | The max number of hours an employee can carryover from one year to the next. Represented as a float string (e.g., '40.0', '80.0'). |
| `paid_out_on_termination` | boolean | No | Boolean representing if an employee's accrued time off hours will be paid out on termination. Set to true if unused hours should be paid when an employee leaves. |
| `max_accrual_hours_per_year` | string | No | The max number of hours an employee can accrue in a year. Represented as a float string (e.g., '120.0', '200.0'). |
| `accrual_waiting_period_days` | integer | No | Number of days before an employee on the policy will begin accruing time off hours. If not specified, employees start accruing immediately. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Time Tracking Time Sheet

**Slug:** `GUSTO_UPDATE_TIME_TRACKING_TIME_SHEET`

Tool to update a time tracking time sheet in Gusto. Use when you need to modify shift times, time zone, or hours worked with their pay classifications for an employee's time sheet.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `hours` | array | Yes | List of hours entries categorized by pay classification (regular, overtime, double_overtime) |
| `version` | string | Yes | The current version of the time sheet for optimistic locking to prevent conflicts |
| `time_zone` | string | Yes | The IANA time zone identifier for the shift (e.g., America/Los_Angeles, America/New_York) |
| `shift_ended_at` | string | Yes | The ISO 8601 timestamp when the shift ended (e.g., 2026-03-05T18:00:00) |
| `time_sheet_uuid` | string | Yes | The UUID of the time sheet to update |
| `shift_started_at` | string | Yes | The ISO 8601 timestamp when the shift started (e.g., 2026-03-05T09:00:00) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Work Address

**Slug:** `GUSTO_UPDATE_WORK_ADDRESS`

Tool to update an employee work address in Gusto. Use when you need to change an employee's work location or effective date. Requires the version field for optimistic locking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `version` | string | Yes | The current version of the work address object. Required for optimistic locking to prevent concurrent modifications. See the versioning guide for information on how to use this field. |
| `location_uuid` | string | No | UUID reference to the company location for this work address |
| `effective_date` | string | No | The date the employee began working at this location in YYYY-MM-DD format |
| `work_address_uuid` | string | Yes | The UUID of the work address to update |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
