Connectors
HR & People
Gusto
Payroll and benefits: employees, payrolls, compensations, and time off
Gusto API referenceAPI checked August 17, 2026
- Signs in with
- Connection fields
- Runs on
- Cloud or On-Prem Worker
- Operations
- 133
- Ready-made triggers
- 0
Connect Gusto
- In Neblex open Connect › Connections and click New Connection.
- Search for Gusto and give the connection a clear name.
- Fill in the fields. Secret values are encrypted and never shown again.
- Click Test, then Create Connection.
| Field | What to enter |
|---|---|
| API hostRequired | Use api.gusto-demo.com during development or approved api.gusto.com production access. |
| Company access tokenOptionalSecret | OAuth company-level access token. |
| Organization API tokenOptionalSecret | Developer Portal organization/system-level API token. |
| Legacy access tokenOptionalSecret | Compatibility field for existing Gusto connections; prefer the scoped token fields. |
Use it in a flow
- Open a flow, open the node library and search for Gusto.
- Drag it onto the canvas and choose an Operation and your connection.
- Map the operation's fields from earlier steps, or click Map with Matt.
- Use Test this step to see what it returns, then save.
To start a flow from Gusto without a ready-made trigger: a Poll for changes trigger can check one of its list operations on a schedule and pass on only what is new; if Gusto can send webhooks, a Webhook trigger receives them at its own URL.
Operations
133 operations in 25 groups. Each one is a step you can add to a flow.
Companies5
Create a companyprovisionCompany | POST | Overview The company provisioning API provides a way to create a Gusto company as part of your integration. |
Get a companygetCompany | GET | Get a company. |
Get all the admins at a companylistAdmins | GET | Returns a list of all the admins at a company scope: company admin:read |
Get the custom fields of a companylistCustomFields | GET | Returns a list of the custom fields of the company. |
Update a companyupdateCompany | PUT | Update a company. |
Company Benefits13
Bulk update employee benefits for a company benefitbulkUpdateEmployeeBenefits | PUT | Employee benefits represent an employee enrolled in a particular company benefit. |
Create a company benefitcreateCompanyBenefit | POST | Company benefits represent the benefits that a company is offering to employees. |
Delete a company benefitdeleteCompanyBenefit | DELETE | The following must be true in order to delete a company benefit - There are no employee benefits associated with the company benefit - There are no payroll items associated with the... |
Get a company benefitgetCompanyBenefit | GET | Company benefits represent the benefits that a company is offering to employees. |
Get a supported benefitgetSupportedBenefit | GET | Returns a benefit supported by Gusto. |
Get all employee benefits for a company benefitlistBenefitEmployeeEnrollments | GET | Employee benefits represent an employee enrolled in a particular company benefit. |
Get all supported benefitslistSupportedBenefits | GET | Returns all benefits supported by Gusto. |
Get benefit fields requirements by benefit typegetBenefitRequirements | GET | Returns the field requirements for a given benefit type. |
Get benefits for a companylistCompanyBenefits | GET | Company benefits represent the benefits that a company is offering to employees. |
Get company benefit summary by company benefit id.getCompanyBenefitSummary | GET | Returns summary benefit data for the requested company benefit id. |
Get contribution exclusions for a company benefitgetContributionExclusions | GET | Returns all contributions for a given company benefit and whether they are excluded or not. |
Update a company benefitupdateCompanyBenefit | PUT | Company benefits represent the benefits that a company is offering to employees. |
Update contribution exclusions for a company benefitupdateContributionExclusions | PUT | Updates contribution exclusions for a given company benefit. |
Contractor Payments2
Get a single contractor paymentgetContractorPayment | GET | Returns a single contractor payment. |
Get contractor payments for a companylistContractorPayments | GET | Returns an object containing individual contractor payments, within a given time period, including totals. |
Contractors4
Create a contractorcreateContractor | POST | Create an individual or business contractor. |
Get a contractorgetContractor | GET | Get a contractor. |
Get contractors of a companylistContractors | GET | Get all contractors, active and inactive, individual and business, for a company. |
Update a contractorupdateContractor | PUT | Update a contractor. |
Departments7
Add people to a departmentaddPeopleToDepartment | PUT | Add employees and contractors to a department scope: departments:write |
Create a departmentcreateDepartment | POST | Create a department scope: departments:write |
Delete a departmentdeleteDepartment | DELETE | Delete a department. |
Get a departmentgetDepartment | GET | Get a department given the UUID scope: departments:read |
Get all departments of a companylistDepartments | GET | Get all of the departments for a given company with the employees and contractors assigned to that department. |
Remove people from a departmentremovePeopleFromDepartment | PUT | Remove employees and contractors from a department scope: departments:write |
Update a departmentupdateDepartment | PUT | Update a department scope: departments:write |
Earning Types4
Create a custom earning typecreateEarningType | POST | Create a custom earning type. |
Deactivate an earning typedeactivateEarningType | DELETE | Deactivate an earning type. |
Get all earning types for a companylistEarningTypes | GET | A payroll item in Gusto is associated to an earning type to name the type of earning described by the payroll item. |
Update an earning typeupdateEarningType | PUT | Update an earning type. |
Employee Addresses10
Create an employee work addresscreateWorkAddress | POST | The work address of an employee describes when an employee began working at an associated company location. |
Create an employee's home addresscreateHomeAddress | POST | |
Delete an employee's home addressdeleteHomeAddress | DELETE | Used for deleting an employee's home address. |
Delete an employee's work addressdeleteWorkAddress | DELETE | Used for deleting an employee's work address. |
Get an employee work addressgetWorkAddress | GET | The work address of an employee is used for payroll tax purposes. |
Get an employee's home addressgetHomeAddress | GET | |
Get an employee's home addresseslistHomeAddresses | GET | |
Get an employee's work addresseslistWorkAddresses | GET | Returns a list of an employee's work addresses. |
Update an employee work addressupdateWorkAddress | PUT | The work address of an employee is used for payroll tax purposes. |
Update an employee's home addressupdateHomeAddress | PUT |
Employee Benefits11
Create a Section 603 high earner statuscreateHighEarnerStatus | POST | Create a Section 603 high earner status for an employee for a specific year. |
Create an employee benefitcreateEmployeeBenefit | POST | Employee benefits represent an employee enrolled in a particular company benefit. |
Create year-to-date benefit amounts from a different companycreateYtdBenefitAmounts | POST | Year-to-date benefit amounts from a different company represents the amount of money added to an employee's plan during a current year, made outside of the current contribution when they... |
Delete an employee benefitdeleteEmployeeBenefit | DELETE | Employee benefits represent an employee enrolled in a particular company benefit. |
Get a Section 603 high earner status for a specific yeargetHighEarnerStatus | GET | Get a Section 603 high earner status for an employee for a specific year. |
Get all benefits for an employeelistEmployeeBenefits | GET | Employee benefits represent an employee enrolled in a particular company benefit. |
Get all Section 603 high earner statuses for an employeelistHighEarnerStatuses | GET | Get all Section 603 high earner statuses for an employee across all years. |
Get an employee benefitgetEmployeeBenefit | GET | Employee benefits represent an employee enrolled in a particular company benefit. |
Get year-to-date benefit amounts from a different companygetYtdBenefitAmounts | GET | Retrieves year-to-date benefit amounts that were contributed at a different company for the specified employee. |
Update a Section 603 high earner statusupdateHighEarnerStatus | PATCH | Update a Section 603 high earner status for an employee for a specific year. |
Update an employee benefitupdateEmployeeBenefit | PUT | Employee benefits represent an employee enrolled in a particular company benefit. |
Employee Employments10
Create an employee rehirecreateRehire | POST | Rehire is created whenever an employee is scheduled to return to the company. |
Create an employee terminationcreateTermination | POST | Create a termination for an employee. |
Delete an employee rehiredeleteRehire | DELETE | Delete an employee rehire. |
Delete an employee terminationdeleteTermination | DELETE | Delete an employee termination. |
Get an employee rehiregetRehire | GET | Retrieve an employee's rehire, which contains information on when the employee returns to work. |
Get an employee terminationgetTermination | GET | Terminations are created whenever an employee is scheduled to leave the company. |
Get employment history for an employeegetEmploymentHistory | GET | Retrieve the employment history for a given employee, which includes termination and rehire. |
Get terminations for an employeelistTerminations | GET | Terminations are created whenever an employee is scheduled to leave the company. |
Update an employee rehireupdateRehire | PUT | Update an employee's rehire. |
Update an employee terminationupdateTermination | PUT | Terminations are created whenever an employee is scheduled to leave the company. |
Employees7
Create an employeecreateEmployee | POST | Create an employee. |
Delete an onboarding employeedeleteEmployee | DELETE | Use this endpoint to delete an employee who is in onboarding. |
Get an employeegetEmployee | GET | Get an employee. |
Get an employee's custom fieldsgetEmployeeCustomFields | GET | Returns a list of the employee's custom fields. |
Get employee time off activitiesgetTimeOffActivities | GET | Get employee time off activities. |
Get employees of a companylistEmployees | GET | Get all of the employees, onboarding, active and terminated, for a given company. |
Update an employee.updateEmployee | PUT | Update an employee. |
Events1
Get all eventslistEvents | GET | Fetch all events, going back up to 30 days, that your partner application has the required scopes for. |
Garnishments5
Create a garnishmentcreateGarnishment | POST | Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. |
Get a garnishmentgetGarnishment | GET | Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. |
Get child support garnishment datagetChildSupportData | GET | Agency data and requirements to be used for creating child support garnishments scope: garnishments:read |
Get garnishments for an employeelistGarnishments | GET | Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. |
Update a garnishmentupdateGarnishment | PUT | Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. |
Introspection2
Disconnect an app integrationdisconnectAppIntegration | POST | Disconnects the given company from the App Integration associated with the current system access token. |
Get info about the current access tokengetTokenInfo | GET | Returns scope and resource information associated with the current access token. |
Jobs and Compensations5
Create a compensationcreateCompensation | POST | Compensations contain information on how much is paid out for a job. |
Delete a compensationdeleteCompensation | DELETE | Compensations contain information on how much is paid out for a job. |
Get a compensationgetCompensation | GET | Compensations contain information on how much is paid out for a job. |
Get compensations for a joblistJobCompensations | GET | Compensations contain information on how much is paid out for a job. |
Update a compensationupdateCompensation | PUT | Compensations contain information on how much is paid out for a job. |
Locations5
Create a company locationcreateCompanyLocation | POST | Create a company location, which represents any address associated with a company: mailing addresses, filing addresses, or work locations. |
Get a locationgetLocation | GET | Get a location. |
Get all company locationslistCompanyLocations | GET | Retrieves all company locations (addresses) associated with a company: mailing addresses, filing addresses, or work locations. |
Get minimum wages for a locationgetMinimumWages | GET | Get minimum wages for a location scope: companies:read |
Update a locationupdateLocation | PUT | Update a location. |
Notifications1
Get notifications for companylistNotifications | GET | Returns all notifications relevant for the given company. |
Pay Schedules4
Get a pay schedulegetPaySchedule | GET | Returns a single pay schedule by UUID. |
Get pay schedule assignments for a companylistPayScheduleAssignments | GET | This endpoint returns the current pay schedule assignment for a company, with pay schedule and employee/department mappings depending on the pay schedule type. |
Get termination pay periods for a companylistTerminationPayPeriods | GET | When a payroll admin terminates an employee and selects "Dismissal Payroll" as the employee's final payroll, their last pay period will appear on the list. |
Get the pay schedules for a companylistPaySchedules | GET | Returns all pay schedules for a company. |
Payrolls5
Get a single payrollgetPayroll | GET | Returns a payroll. |
Get all payrolls for a companylistPayrolls | GET | Returns a list of payrolls for a company. |
Get pay periods for a companylistPayPeriods | GET | Pay periods are the foundation of payroll. |
Prepare a payroll for updatepreparePayroll | PUT | Prepares an unprocessed payroll for update, including: adding eligible employees to off-cycle payrolls that support multiple employees (Bonus, Correction, and Adhoc), and updating check... |
Update a payroll by IDupdatePayroll | PUT | This endpoint allows you to update information for one or more employees for a specific unprocessed payroll. |
Reimbursements5
Create a recurring reimbursementcreateRecurringReimbursement | POST | Create a recurring reimbursement for an employee. |
Delete a recurring reimbursementdeleteRecurringReimbursement | DELETE | Delete (soft delete) a recurring reimbursement for an employee. |
Get a recurring reimbursementgetRecurringReimbursement | GET | Get a specific recurring reimbursement. |
Get recurring reimbursements for an employeelistRecurringReimbursements | GET | Get all active recurring reimbursements for an employee. |
Update a recurring reimbursementupdateRecurringReimbursement | PUT | Update a recurring reimbursement. |
Reports2
Create a general ledger reportcreateGeneralLedgerReport | POST | Create a general ledger report for a payroll. |
Get a reportgetReport | GET | Get a company's report given the request uuid. |
Salary Estimates5
Accept a salary estimateacceptSalaryEstimate | POST | Accept and finalize a salary estimate. |
Create a salary estimate for an employeecreateSalaryEstimate | POST | Create a salary estimate for an employee. |
Get a salary estimategetSalaryEstimate | GET | Retrieve a salary estimate by its UUID. |
Search for BLS occupationssearchOccupations | GET | Search for Bureau of Labor Statistics (BLS) occupations by name or keyword. |
Update a salary estimateupdateSalaryEstimate | PUT | Update an existing salary estimate. |
Time Off Policies4
Add employees to a time off policyaddEmployeesToTimeOffPolicy | PUT | Add employees to a time off policy. |
Calculate accruing time off hourscalculateAccruingTimeOff | POST | Returns a list of accruing time off for each time off policy associated with the employee. |
Get a time off policygetTimeOffPolicy | GET | Get a time off policy scope: time off policies:read |
Get all time off policies for a companylistTimeOffPolicies | GET | Get all time off policies for a company scope: time off policies:read |
Time Off Requests1
Get time off requests for a companylistTimeOffRequests | GET | Get all time off requests, past and present, for a company. |
Time Tracking7
Create a payroll synccreatePayrollSync | POST | Initiate a payroll sync for a company. |
Create a time sheetcreateTimeSheet | POST | Create a time sheet for a company. |
Delete a time sheetdeleteTimeSheet | DELETE | Delete a company's time sheet. |
Get a payroll syncgetPayrollSync | GET | Fetch a payroll sync. |
Get a time sheetgetTimeSheet | GET | Fetch a time sheet. |
Get all time sheets for a companylistTimeSheets | GET | Fetch all company's time sheets. |
Update a time sheetupdateTimeSheet | PUT | Update a time sheet. |
Webhooks8
Create a webhook subscriptioncreateWebhookSubscription | POST | Create a webhook subscription to receive events of the specified subscription types whenever there is a state change. |
Delete a webhook subscriptiondeleteWebhookSubscription | DELETE | Deletes the Webhook Subscription associated with the provided UUID. |
Get a webhook subscriptiongetWebhookSubscription | GET | Returns the Webhook Subscription associated with the provided UUID. |
Get the webhooks health statusgetWebhooksHealth | GET | Returns the health status (healthy, unhealthy, or unknown) of the webhooks system based on the last ten minutes of activity. |
List webhook subscriptionslistWebhookSubscriptions | GET | Returns all webhook subscriptions associated with the provided Partner API token. |
Request a verification token for a webhook subscriptionrequestWebhookVerificationToken | GET | Request that the webhook subscription verification token be POSTed to the Subscription URL. |
Update a webhook subscriptionupdateWebhookSubscription | PUT | Updates the Webhook Subscription associated with the provided UUID. |
Verify a webhook subscriptionverifyWebhookSubscription | PUT | When a webhook subscription is created, a verification token is POSTed to the registered webhook subscription URL. |