Skip to content

Latest commit

 

History

History
executable file
·
479 lines (367 loc) · 35.2 KB

File metadata and controls

executable file
·
479 lines (367 loc) · 35.2 KB

timeOffPolicies

Available Operations

getCompaniesCompanyUuidTimeOffPolicies

Get all time off policies for a company scope: time_off_policies:read

Example Usage

import { Gusto } from "@speakeasy-sdks/gusto";
import {
  GetCompaniesCompanyUuidTimeOffPoliciesRequest,
  GetCompaniesCompanyUuidTimeOffPoliciesResponse,
} from "@speakeasy-sdks/gusto/dist/sdk/models/operations";

const sdk = new Gusto({
  security: {
    authorization: "",
  },
});
const companyUuid: string = "facere";

sdk.timeOffPolicies.getCompaniesCompanyUuidTimeOffPolicies(companyUuid).then((res: GetCompaniesCompanyUuidTimeOffPoliciesResponse) => {
  if (res.statusCode == 200) {
    // handle response
  }
});

Parameters

Parameter Type Required Description
companyUuid string ✔️ The UUID of the company
config AxiosRequestConfig Available config options for making requests.

Response

Promise<operations.GetCompaniesCompanyUuidTimeOffPoliciesResponse>

getTimeOffPoliciesTimeOffPolicyUuid

Get a time off policy scope: time_off_policies:read

Example Usage

import { Gusto } from "@speakeasy-sdks/gusto";
import {
  GetTimeOffPoliciesTimeOffPolicyUuidRequest,
  GetTimeOffPoliciesTimeOffPolicyUuidResponse,
} from "@speakeasy-sdks/gusto/dist/sdk/models/operations";

const sdk = new Gusto({
  security: {
    authorization: "",
  },
});
const timeOffPolicyUuid: string = "corrupti";

sdk.timeOffPolicies.getTimeOffPoliciesTimeOffPolicyUuid(timeOffPolicyUuid).then((res: GetTimeOffPoliciesTimeOffPolicyUuidResponse) => {
  if (res.statusCode == 200) {
    // handle response
  }
});

Parameters

Parameter Type Required Description
timeOffPolicyUuid string ✔️ The UUID of the company time off policy
config AxiosRequestConfig Available config options for making requests.

Response

Promise<operations.GetTimeOffPoliciesTimeOffPolicyUuidResponse>

postCompaniesCompanyUuidTimeOffPolicies

Create a Time Off Policy scope: time_off_policies:write

Example Usage

import { Gusto } from "@speakeasy-sdks/gusto";
import {
  PostCompaniesCompanyUuidTimeOffPoliciesRequest,
  PostCompaniesCompanyUuidTimeOffPoliciesRequestBody,
  PostCompaniesCompanyUuidTimeOffPoliciesRequestBodyAccrualMethod,
  PostCompaniesCompanyUuidTimeOffPoliciesResponse,
} from "@speakeasy-sdks/gusto/dist/sdk/models/operations";

const sdk = new Gusto({
  security: {
    authorization: "",
  },
});
const companyUuid: string = "molestiae";
const requestBody: PostCompaniesCompanyUuidTimeOffPoliciesRequestBody = {
  accrualMethod: PostCompaniesCompanyUuidTimeOffPoliciesRequestBodyAccrualMethod.PerHourWorked,
  accrualRate: "accusamus",
  accrualRateUnit: "necessitatibus",
  accrualWaitingPeriodDays: 733289,
  carryoverLimitHours: "sint",
  maxAccrualHoursPerYear: "ea",
  maxHours: "autem",
  name: "Olivia Larkin",
  paidOutOnTermination: false,
  policyType: "voluptatibus",
};

sdk.timeOffPolicies.postCompaniesCompanyUuidTimeOffPolicies(companyUuid, requestBody).then((res: PostCompaniesCompanyUuidTimeOffPoliciesResponse) => {
  if (res.statusCode == 200) {
    // handle response
  }
});

Parameters

Parameter Type Required Description
companyUuid string ✔️ The UUID of the company
requestBody operations.PostCompaniesCompanyUuidTimeOffPoliciesRequestBody Requires a policy name, a policy_type, and an accrual_method
config AxiosRequestConfig Available config options for making requests.

Response

Promise<operations.PostCompaniesCompanyUuidTimeOffPoliciesResponse>

postV1PayrollsPayrollIdCalculateAccruingTimeOffHours

Returns a list of accruing time off for each time off policy associated with the employee.

Factors affecting the accrued hours:

  • the time off policy accrual method (whether they get pay per hour worked, per hour paid, with / without overtime, accumulate time off based on pay period / calendar year / anniversary)
  • how many hours of work during this pay period
  • how many hours of PTO / sick hours taken during this pay period (for per hour paid policies only)
  • company pay schedule frequency (for per pay period)

If none of the parameters is passed in, the accrued time off hour will be 0.

Example Usage

import { Gusto } from "@speakeasy-sdks/gusto";
import {
  PostV1PayrollsPayrollIdCalculateAccruingTimeOffHoursRequest,
  PostV1PayrollsPayrollIdCalculateAccruingTimeOffHoursRequestBody,
  PostV1PayrollsPayrollIdCalculateAccruingTimeOffHoursResponse,
} from "@speakeasy-sdks/gusto/dist/sdk/models/operations";

const sdk = new Gusto({
  security: {
    authorization: "",
  },
});
const employeeId: string = "cum";
const payrollId: string = "at";
const requestBody: PostV1PayrollsPayrollIdCalculateAccruingTimeOffHoursRequestBody = {
  doubleOvertimeHoursWorked: 51.52,
  overtimeHoursWorked: 1566.53,
  ptoHoursUsed: 6941.58,
  regularHoursWorked: 6841.26,
  sickHoursUsed: 9195.08,
};

sdk.timeOffPolicies.postV1PayrollsPayrollIdCalculateAccruingTimeOffHours(employeeId, payrollId, requestBody).then((res: PostV1PayrollsPayrollIdCalculateAccruingTimeOffHoursResponse) => {
  if (res.statusCode == 200) {
    // handle response
  }
});

Parameters

Parameter Type Required Description
employeeId string ✔️ The UUID of the employee
payrollId string ✔️ The UUID of the payroll
requestBody operations.PostV1PayrollsPayrollIdCalculateAccruingTimeOffHoursRequestBody N/A
config AxiosRequestConfig Available config options for making requests.

Response

Promise<operations.PostV1PayrollsPayrollIdCalculateAccruingTimeOffHoursResponse>

putTimeOffPoliciesTimeOffPolicyUuid

Update a Time Off Policy scope: time_off_policies:write

Example Usage

import { Gusto } from "@speakeasy-sdks/gusto";
import {
  PutTimeOffPoliciesTimeOffPolicyUuidRequest,
  PutTimeOffPoliciesTimeOffPolicyUuidRequestBody,
  PutTimeOffPoliciesTimeOffPolicyUuidRequestBodyAccrualMethod,
  PutTimeOffPoliciesTimeOffPolicyUuidResponse,
} from "@speakeasy-sdks/gusto/dist/sdk/models/operations";

const sdk = new Gusto({
  security: {
    authorization: "",
  },
});
const timeOffPolicyUuid: string = "accusantium";
const requestBody: PutTimeOffPoliciesTimeOffPolicyUuidRequestBody = {
  accrualMethod: PutTimeOffPoliciesTimeOffPolicyUuidRequestBodyAccrualMethod.PerHourWorkedNoOvertime,
  accrualRate: "officiis",
  accrualRateUnit: "eos",
  accrualWaitingPeriodDays: 844854,
  carryoverLimitHours: "odio",
  maxAccrualHoursPerYear: "praesentium",
  maxHours: "odit",
  name: "Stacy Mraz",
  paidOutOnTermination: false,
};

sdk.timeOffPolicies.putTimeOffPoliciesTimeOffPolicyUuid(timeOffPolicyUuid, requestBody).then((res: PutTimeOffPoliciesTimeOffPolicyUuidResponse) => {
  if (res.statusCode == 200) {
    // handle response
  }
});

Parameters

Parameter Type Required Description
timeOffPolicyUuid string ✔️ The UUID of the company time off policy
requestBody operations.PutTimeOffPoliciesTimeOffPolicyUuidRequestBody Can update any attributes of the time off policy except policy_type, is_active, complete & employees
config AxiosRequestConfig Available config options for making requests.

Response

Promise<operations.PutTimeOffPoliciesTimeOffPolicyUuidResponse>

putV1TimeOffPoliciesTimeOffPolicyUuidDeactivate

Deactivate a time off policy

Example Usage

import { Gusto } from "@speakeasy-sdks/gusto";
import {
  PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest,
  PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse,
} from "@speakeasy-sdks/gusto/dist/sdk/models/operations";

const sdk = new Gusto({
  security: {
    authorization: "",
  },
});
const timeOffPolicyUuid: string = "recusandae";

sdk.timeOffPolicies.putV1TimeOffPoliciesTimeOffPolicyUuidDeactivate(timeOffPolicyUuid).then((res: PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse) => {
  if (res.statusCode == 200) {
    // handle response
  }
});

Parameters

Parameter Type Required Description
timeOffPolicyUuid string ✔️ The UUID of the company time off policy
config AxiosRequestConfig Available config options for making requests.

Response

Promise<operations.PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse>

putV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployees

Remove employees from a time off policy scope: time_off_policies:write

Example Usage

import { Gusto } from "@speakeasy-sdks/gusto";
import {
  PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequest,
  PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody,
  PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBodyEmployees,
  PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse,
} from "@speakeasy-sdks/gusto/dist/sdk/models/operations";

const sdk = new Gusto({
  security: {
    authorization: "",
  },
});
const timeOffPolicyUuid: string = "similique";
const requestBody: PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody = {
  employees: [
    {
      uuid: "b5197f92-443d-4a7c-a52b-895c537c6454",
    },
    {
      uuid: "efb0b348-96c3-4ca5-acfb-e2fd57075779",
    },
  ],
};

sdk.timeOffPolicies.putV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployees(timeOffPolicyUuid, requestBody).then((res: PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse) => {
  if (res.statusCode == 200) {
    // handle response
  }
});

Parameters

Parameter Type Required Description
timeOffPolicyUuid string ✔️ The UUID of the company time off policy
requestBody operations.PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody A list of employee objects containing the employee uuid
config AxiosRequestConfig Available config options for making requests.

Response

Promise<operations.PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse>

putVersionTimeOffPoliciesTimeOffPolicyUuidAddEmployees

Add employees to a time off policy. Employees are required to have at least one job to be added to a time off policy. Accepts starting balances for non-unlimited policies scope: time_off_policies:write

Example Usage

import { Gusto } from "@speakeasy-sdks/gusto";
import {
  PutVersionTimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequest,
  PutVersionTimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody,
  PutVersionTimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBodyEmployees,
  PutVersionTimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse,
} from "@speakeasy-sdks/gusto/dist/sdk/models/operations";

const sdk = new Gusto({
  security: {
    authorization: "",
  },
});
const timeOffPolicyUuid: string = "dolores";
const requestBody: PutVersionTimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody = {
  employees: [
    {
      balance: "veritatis",
      uuid: "77deac64-6ecb-4573-809e-3eb1e5a2b12e",
    },
    {
      balance: "nobis",
      uuid: "07f116db-9954-45fc-95fa-88970e189dbb",
    },
    {
      balance: "velit",
      uuid: "0fcb33ea-055b-4197-8d44-e2f52d82d351",
    },
  ],
};

sdk.timeOffPolicies.putVersionTimeOffPoliciesTimeOffPolicyUuidAddEmployees(timeOffPolicyUuid, requestBody).then((res: PutVersionTimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse) => {
  if (res.statusCode == 200) {
    // handle response
  }
});

Parameters

Parameter Type Required Description
timeOffPolicyUuid string ✔️ The UUID of the company time off policy
requestBody operations.PutVersionTimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody A list of employee objects containing the employee uuid
config AxiosRequestConfig Available config options for making requests.

Response

Promise<operations.PutVersionTimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse>

putVersionTimeOffPoliciesTimeOffPolicyUuidBalance

Updates time off hours balances for employees for a time off policy scope: time_off_policies:write

Example Usage

import { Gusto } from "@speakeasy-sdks/gusto";
import {
  PutVersionTimeOffPoliciesTimeOffPolicyUuidBalanceRequest,
  PutVersionTimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody,
  PutVersionTimeOffPoliciesTimeOffPolicyUuidBalanceRequestBodyEmployees,
  PutVersionTimeOffPoliciesTimeOffPolicyUuidBalanceResponse,
} from "@speakeasy-sdks/gusto/dist/sdk/models/operations";

const sdk = new Gusto({
  security: {
    authorization: "",
  },
});
const timeOffPolicyUuid: string = "velit";
const requestBody: PutVersionTimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody = {
  employees: [
    {
      balance: "tempore",
      uuid: "6f48b656-bcdb-435f-b2e4-b27537a8cd9e",
    },
    {
      balance: "ducimus",
      uuid: "319c177d-525f-477b-914e-eb52ff785fc3",
    },
    {
      balance: "nihil",
      uuid: "814d4c98-e0c2-4bb8-9eb7-5dad636c6005",
    },
  ],
};

sdk.timeOffPolicies.putVersionTimeOffPoliciesTimeOffPolicyUuidBalance(timeOffPolicyUuid, requestBody).then((res: PutVersionTimeOffPoliciesTimeOffPolicyUuidBalanceResponse) => {
  if (res.statusCode == 200) {
    // handle response
  }
});

Parameters

Parameter Type Required Description
timeOffPolicyUuid string ✔️ The UUID of the company time off policy
requestBody operations.PutVersionTimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody A list of employee objects containing the employee uuid and time off hours balance
config AxiosRequestConfig Available config options for making requests.

Response

Promise<operations.PutVersionTimeOffPoliciesTimeOffPolicyUuidBalanceResponse>