Manage employee benefits
Create and view the benefits assigned to an employee
Benefits are the employer-offered programs (health, dental, retirement, commuter, etc.) that can involve employer contributions and employee payroll deductions.
Quick glossary
- Company benefit: the companyβs configured offering for a supported benefit type. Learn more about company benefits in the Manage company benefits guide.
- Employee benefit: an employeeβs enrollment in a company benefit, including employee deduction and company contribution details
- Supported benefit: a benefit type that Gusto recognizes (for example, Medical Insurance). You can check the list of supported benefits using the GET /v1/benefits endpoint.
Create an employee benefit
Create an employee benefit by using the POST employees/{employee_id}/employee_benefits endpoint.
The body requires the parameter company_benefit_uuid. This is the uuid of the company benefit that youβve previously created and wanted to assign into this employee benefit.
Sample request
curl --request POST \
--url https://api.gusto-demo.com/v1/employees/employee_id/employee_benefits \
--header 'X-Gusto-API-Version: 2025-06-15' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '
{
"active": true,
"employee_deduction": "100.00",
"deduct_as_percentage": false,
"contribution": {
"type": "amount",
"value": "100.00"
},
"elective": false,
"catch_up": false,
"coverage_salary_multiplier": "0.00",
"company_benefit_uuid": "f68abb42-431e-4392-bc3f-2795627e00f3"
}
'
Sample response
{
"version": "09j3d29jqdpj92109j9j2d90dq",
"employee_uuid": 908123091820398,
"company_benefit_uuid": "54e37c27-43e6-4ae5-a5b2-e29895a133be",
"active": true,
"uuid": "e91ca856-a915-4339-9b18-29f9cd66b031",
"employee_deduction": "100.00",
"employee_deduction_annual_maximum": "200.00",
"company_contribution_annual_maximum": "200.00",
"limit_option": null,
"deduct_as_percentage": false,
"catch_up": false,
"coverage_amount": null,
"deduction_reduces_taxable_income": null,
"coverage_salary_multiplier": "0.00",
"contribution": {
"type": "amount",
"value": "100.00"
}
}
Get an employee benefit
After youβve created an employee benefit, you can confirm with the GET employee_benefits/{employee_benefit_id} endpoint.
Sample request
curl --request GET \
--url https://api.gusto-demo.com/v1/employee_benefits/employee_benefit_id \
--header 'X-Gusto-API-Version: 2025-06-15' \
--header 'accept: application/json'
Sample response
{
"version": "09j3d29jqdpj92109j9j2d90dq",
"employee_uuid": 908123091820398,
"company_benefit_uuid": "54e37c27-43e6-4ae5-a5b2-e29895a133be",
"active": true,
"uuid": "e91ca856-a915-4339-9b18-29f9cd66b031",
"employee_deduction": "100.00",
"employee_deduction_annual_maximum": "200.00",
"company_contribution_annual_maximum": "200.00",
"limit_option": null,
"deduct_as_percentage": false,
"catch_up": false,
"coverage_amount": null,
"deduction_reduces_taxable_income": null,
"coverage_salary_multiplier": "0.00",
"contribution": {
"type": "amount",
"value": "100.00"
}
}
Get all benefits for an employee
Get an array of all employee benefits for a given employee by using the GET employees/{employee_id}/employee_benefits endpoint.
Sample request
curl --request GET \
--url https://api.gusto-demo.com/v1/employees/employee_id/employee_benefits \
--header 'X-Gusto-API-Version: 2025-06-15' \
--header 'accept: application/json'
Sample response
[
{
"version": "09j3d29jqdpj92109j9j2d90dq",
"employee_uuid": "8f9f3f68-8fd3-499d-ade7-4a052e56494e",
"company_benefit_uuid": "54e37c27-43e6-4ae5-a5b2-e29895a133be",
"active": true,
"uuid": "e91ca856-a915-4339-9b18-29f9cd66b031",
"employee_deduction": "100.00",
"company_contribution": "100.00",
"employee_deduction_annual_maximum": "200.00",
"company_contribution_annual_maximum": "200.00",
"limit_option": null,
"deduct_as_percentage": false,
"contribute_as_percentage": false,
"catch_up": false,
"coverage_amount": null,
"deduction_reduces_taxable_income": null,
"coverage_salary_multiplier": "0.00"
}
]
Get all employee benefits for a company benefit
Get an array of all employee benefits enrolled for a given company benefit using the GET company_benefits/{company_benefit_id}/employee_benefits endpoint.
Sample request
curl --request GET \
--url https://api.gusto-demo.com/v1/company_benefits/company_benefit_id/employee_benefits \
--header 'X-Gusto-API-Version: 2025-06-15' \
--header 'accept: application/json'
Sample response
[
{
"version": "09j3d29jqdpj92109j9j2d90dq",
"employee_uuid": "8f9f3f68-8fd3-499d-ade7-4a052e56494e",
"company_benefit_uuid": "54e37c27-43e6-4ae5-a5b2-e29895a133be",
"active": true,
"uuid": "e91ca856-a915-4339-9b18-29f9cd66b031",
"employee_deduction": "100.00",
"company_contribution": "100.00",
"employee_deduction_annual_maximum": "200.00",
"company_contribution_annual_maximum": "200.00",
"limit_option": null,
"deduct_as_percentage": false,
"contribute_as_percentage": false,
"catch_up": false,
"coverage_amount": null,
"deduction_reduces_taxable_income": null,
"coverage_salary_multiplier": "0.00"
}
]
Delete an employee benefit
Delete an existing employee benefit by using the DELETE employee_benefits/{employee_benefit_id} endpoint.
Sample request
curl --request DELETE \
--url https://api.gusto-demo.com/v1/employee_benefits/employee_benefit_id \
--header 'X-Gusto-API-Version: 2025-06-15'
'
If the delete is successful, youβll get a 204 response with no content.
Updated 2 days ago