GuidesAPI ReferenceChangelogAPI StatusAPI PolicyGusto Security
API Reference
These docs are for v2024-03-01. Click to read the latest docs for v2026-06-15.

Create a new pay schedule

If a company does not have any pay schedules, this endpoint will create a single pay schedule and assign it to all employees. This is a common use case during company onboarding.

If a company has an existing active pay schedule and want to support multiple pay schedules, this endpoint will create a pay schedule that is not assigned to any employee.

Be sure to check state laws to know what schedule is right for your customers.

scope: pay_schedules:write

Path Params
string
required

The UUID of the company

Body Params
string
enum
required

The frequency that employees on this pay schedule are paid with Gusto.

Allowed:
string
required

The first date that employees on this pay schedule are paid with Gusto.

string
required

The last date of the first pay period. This can be the same date as the anchor pay date.

integer | null

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.

integer | null

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.

string

A custom pay schedule name, defaults to the pay frequency description.

Headers
string
enum
Defaults to 2024-03-01

Determines the date-based API version associated with your API call. If none is provided, your application's minimum API version is used.

Allowed:
Responses

404

Not Found

The requested resource does not exist. Make sure the provided UUID is valid.

Language
Credentials
Bearer
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json